trptcolin / reply

REPL-y: A fitter, happier, more productive REPL for Clojure.
Eclipse Public License 1.0
337 stars 44 forks source link

reply prints confusingly with metadata errors #164

Open hypirion opened 8 years ago

hypirion commented 8 years ago

From technomancy/leiningen#1668:

Calling lein trampoline run, then typing the following leads to strange output:

user=> (^ 2 7)

IllegalArgumentException Metadata must be Symbol,Keyword,String or Map  clojure.lang.LispReader$MetaReader.invoke (LispReader.java:720)
RuntimeException Unmatched delimiter: )  clojure.lang.Util.runtimeException (Util.java:170)
user=> (* 2 7)
714
user=> (^ 2 7)

IllegalArgumentException Metadata must be Symbol,Keyword,String or Map  clojure.lang.LispReader$MetaReader.invoke (LispReader.java:720)
RuntimeException Unmatched delimiter: )  clojure.lang.Util.runtimeException (Util.java:170)
user=> (+
  #_=> 1 2 3)
76

In particular, it seems like the 7 is retained even after ) is parsed, and this is printed as a prefix in front of next evaluation result.