Default Clojure template code for A*Craft does not work

I cannot run test 1 from A*Craft using Clojure with the default template code provided.

I see the following:

Standard Error Stream:

Exception in thread “main” clojure.lang.LispReader$ReaderException: clojure.lang.LispReader$ReaderException: clojure.lang.LispReader$ReaderException: clojure.lang.LispReader$ReaderException: clojure.lang.LispReader$ReaderException: clojure.lang.LispReader$ReaderException: clojure.lang.LispReader$ReaderException: clojure.lang.LispReader$ReaderException: clojure.lang.LispReader$ReaderException: java.lang.RuntimeException: Reader tag must be a symbol

at clojure.lang.LispReader.read(LispReader.java:304)

at clojure.lang.LispReader.read(LispReader.java:206)

at clojure.lang.LispReader.read(LispReader.java:200)

at clojure.core$read.invokeStatic(core.clj:3758)

at clojure.core$read.invokeStatic(core.clj:3733)

at clojure.core$read.invokeStatic(core.clj:3733)

at clojure.core$read.invokeStatic(core.clj:3733)

at clojure.core$read.invoke(core.clj:3733)

at Player$_main.invokeStatic(Player.clj:10)

at Player$_main.doInvoke(Player.clj:7)

at clojure.lang.RestFn.applyTo(RestFn.java:137)

at clojure.lang.Var.applyTo(Var.java:702)

at clojure.core$apply.invokeStatic(core.clj:657)

at clojure.core$apply.invoke(core.clj:652)

at Bridge$call.invokeStatic(Bridge.clj:6)

at Bridge$call.doInvoke(Bridge.clj:4)

at clojure.lang.RestFn.invoke(RestFn.java:423)

at Bridge$_main.invokeStatic(Bridge.clj:12)

at Bridge$_main.doInvoke(Bridge.clj:8)

at clojure.lang.RestFn.invoke(RestFn.java:397)

at clojure.lang.AFn.applyToHelper(AFn.java:152)

at clojure.lang.RestFn.applyTo(RestFn.java:132)

at Bridge.main(Unknown Source)

Caused by: clojure.lang.LispReader$ReaderException: clojure.lang.LispReader$ReaderException: clojure.lang.LispReader$ReaderException: clojure.lang.LispReader$ReaderException: clojure.lang.LispReader$ReaderException: clojure.lang.LispReader$ReaderException: clojure.lang.LispReader$ReaderException: clojure.lang.LispReader$ReaderException: java.lang.RuntimeException: Reader tag must be a symbol

at clojure.lang.LispReader.read(LispReader.java:304)

at clojure.lang.LispReader.read(LispReader.java:210)

at clojure.lang.LispReader.access$200(LispReader.java:41)

at clojure.lang.LispReader$CtorReader.invoke(LispReader.java:1404)

at clojure.lang.LispReader$DispatchReader.invoke(LispReader.java:836)

at clojure.lang.LispReader.read(LispReader.java:275)

at clojure.lang.LispReader.read(LispReader.java:210)

at clojure.lang.LispReader.access$200(LispReader.java:41)

at clojure.lang.LispReader$SymbolicValueReader.invoke(LispReader.java:741)

at clojure.lang.LispReader$DispatchReader.invoke(LispReader.java:843)

at clojure.lang.LispReader.read(LispReader.java:275)

at clojure.lang.LispReader.read(LispReader.java:210)

at clojure.lang.LispReader.access$200(LispReader.java:41)

at clojure.lang.LispReader$SymbolicValueReader.invoke(LispReader.java:741)

at clojure.lang.LispReader$DispatchReader.invoke(LispReader.java:843)

at clojure.lang.LispReader.read(LispReader.java:275)

at clojure.lang.LispReader.read(LispReader.java:210)

at clojure.lang.LispReader.access$200(LispReader.java:41)

at clojure.lang.LispReader$SymbolicValueReader.invoke(LispReader.java:741)

at clojure.lang.LispReader$DispatchReader.invoke(LispReader.java:843)

at clojure.lang.LispReader.read(LispReader.java:275)

at clojure.lang.LispReader.read(LispReader.java:210)

at clojure.lang.LispReader.access$200(LispReader.java:41)

at clojure.lang.LispReader$SymbolicValueReader.invoke(LispReader.java:741)

at clojure.lang.LispReader$DispatchReader.invoke(LispReader.java:843)

at clojure.lang.LispReader.read(LispReader.java:275)

at clojure.lang.LispReader.read(LispReader.java:210)

at clojure.lang.LispReader.access$200(LispReader.java:41)

at clojure.lang.LispReader$SymbolicValueReader.invoke(LispReader.java:741)

at clojure.lang.LispReader$DispatchReader.invoke(LispReader.java:843)

at clojure.lang.LispReader.read(LispReader.java:275)

at clojure.lang.LispReader.read(LispReader.java:210)

at clojure.lang.LispReader.access$200(LispReader.java:41)

at clojure.lang.LispReader$SymbolicValueReader.invoke(LispReader.java:741)

at clojure.lang.LispReader$DispatchReader.invoke(LispReader…

Exception in thread “main” clojure.lang.LispReader$ReaderException: clojure.lang.LispReader$ReaderException: clojure.lang.LispReader$ReaderException: clojure.lang.LispReader$ReaderException: clojure.lang.LispReader$ReaderException: clojure.lang.LispReader$ReaderException: clojure.lang.LispReader$ReaderException: clojure.lang.LispReader$ReaderException: clojure.lang.LispReader$ReaderException: java.lang.RuntimeException: Reader tag must be a symbol

at clojure.lang.LispReader.read on line 304

at clojure.lang.LispReader.read on line 206

at clojure.lang.LispReader.read on line 200

at clojure.core$read.invokeStatic on line 3758

at clojure.core$read.invokeStatic on line 3733

at clojure.core$read.invokeStatic on line 3733

at clojure.core$read.invokeStatic on line 3733

at clojure.core$read.invoke on line 3733

at Player$_main.invokeStatic on line 10

at Player$_main.doInvoke on line 7

at clojure.lang.RestFn.applyTo on line 137

at clojure.lang.Var.applyTo on line 702

at clojure.core$apply.invokeStatic on line 657

at clojure.core$apply.invoke on line 652

at Bridge$call.invokeStatic on line 6

at Bridge$call.doInvoke on line 4

at clojure.lang.RestFn.invoke on line 423

at Bridge$_main.invokeStatic on line 12

at Bridge$_main.doInvoke on line 8

at clojure.lang.RestFn.invoke on line 397

at clojure.lang.AFn.applyToHelper on line 152

at clojure.lang.RestFn.applyTo on line 132

at Bridge.main on line 0

Game information:

You failed to provide instructions in the provided time.

Ah. Default code should use read-line rather than read. read is the function used by the repl/interpreter to read in Clojure syntax, so it is trying to figure out how to interpret ############# as Clojure syntax, which would be invalid.

1 Like

Thanks for pointing that out.

This is fixed. Closing the topic.