ibdknox / live-cljs

a clojurescript version of bret victor's editable game
406 stars 49 forks source link

Unable to run (Assert failed: Can't recur here) #3

Open javajosh opened 12 years ago

javajosh commented 12 years ago

lein run ... DOING: goog.provide('coding.client.main'); goog.require('cljs.core'); goog.require('coding.client.util'); goog.require('waltz.state'); goog.require('coding.client.core'); goog.require('jayq.core'); goog.require('coding.client.editor'); goog.require('waltz.history'); goog.require('waltz.state'); goog.require('waltz.transition'); goog.require('monet.geometry'); goog.require('monet.canvas'); goog.require('clojure.string'); goog.require('clojure.browser.repl');

"Elapsed time: 126.117 msecs" Exception in thread "main" java.lang.RuntimeException: java.lang.AssertionError: Assert failed: Can't recur here frame at clojure.lang.Util.runtimeException(Util.java:165) at clojure.lang.Compiler.eval(Compiler.java:6476) at clojure.lang.Compiler.eval(Compiler.java:6455) at clojure.lang.Compiler.eval(Compiler.java:6431) at clojure.core$eval.invoke(core.clj:2795) at clojure.main$eval_opt.invoke(main.clj:296) at clojure.main$initialize.invoke(main.clj:315) at clojure.main$null_opt.invoke(main.clj:348) at clojure.main$main.doInvoke(main.clj:426) at clojure.lang.RestFn.invoke(RestFn.java:421) at clojure.lang.Var.invoke(Var.java:405) at clojure.lang.AFn.applyToHelper(AFn.java:163) at clojure.lang.Var.applyTo(Var.java:518) at clojure.main.main(main.java:37) Caused by: java.lang.AssertionError: Assert failed: Can't recur here frame at cljs.compiler$fn2122.invoke(compiler.clj:766) at clojure.lang.MultiFn.invoke(MultiFn.java:177) at cljs.compiler$analyze_seq.invoke(compiler.clj:1040) at cljs.compiler$analyze.invoke(compiler.clj:1093) at cljs.compiler$analyze.invoke(compiler.clj:1086) at cljs.compiler$fn2046.invoke(compiler.clj:606) at clojure.lang.MultiFn.invoke(MultiFn.java:177) at cljs.compiler$analyze_seq.invoke(compiler.clj:1040) at cljs.compiler$analyze.invoke(compiler.clj:1093) at cljs.compiler$analyze.invoke(compiler.clj:1086) at cljs.compiler$parse_invoke$fn2261.invoke(compiler.clj:986) at clojure.core$map$fn3811.invoke(core.clj:2432) at clojure.lang.LazySeq.sval(LazySeq.java:42) at clojure.lang.LazySeq.seq(LazySeq.java:60) at clojure.lang.Cons.next(Cons.java:39) at clojure.lang.PersistentVector.create(PersistentVector.java:50) at clojure.lang.LazilyPersistentVector.create(LazilyPersistentVector.java:31) at clojure.core$vec.invoke(core.clj:345) at cljs.compiler$parse_invoke.invoke(compiler.clj:986) at cljs.compiler$analyze_seq.invoke(compiler.clj:1041) at cljs.compiler$analyze.invoke(compiler.clj:1093) at cljs.compiler$analyze.invoke(compiler.clj:1086) at cljs.compiler$fn2046.invoke(compiler.clj:607) at clojure.lang.MultiFn.invoke(MultiFn.java:177) at cljs.compiler$analyze_seq.invoke(compiler.clj:1040) at cljs.compiler$analyze.invoke(compiler.clj:1093) at cljs.compiler$analyze.invoke(compiler.clj:1086) at cljs.compiler$parse_invoke$fn2261.invoke(compiler.clj:986) at clojure.core$map$fn3811.invoke(core.clj:2432) at clojure.lang.LazySeq.sval(LazySeq.java:42) at clojure.lang.LazySeq.seq(LazySeq.java:60) at clojure.lang.RT.seq(RT.java:466) at clojure.lang.LazilyPersistentVector.create(LazilyPersistentVector.java:31) at clojure.core$vec.invoke(core.clj:345) at cljs.compiler$parse_invoke.invoke(compiler.clj:986) at cljs.compiler$analyze_seq.invoke(compiler.clj:1041) at cljs.compiler$analyze.invoke(compiler.clj:1093) at cljs.compiler$analyze.invoke(compiler.clj:1086) at cljs.compiler$parse_invoke$fn2261.invoke(compiler.clj:986) at clojure.core$map$fn__3811.invoke(core.clj:2432) at clojure.lang.LazySeq.sval(LazySeq.java:42) at clojure.lang.LazySeq.seq(LazySeq.java:60) at clojure.lang.Cons.next(Cons.java:39) at clojure.lang.PersistentVector.create(PersistentVector.java:50) at clojure.lang.LazilyPersistentVector.create(LazilyPersistentVector.java:31) at clojure.core$vec.invoke(core.clj:345) at cljs.compiler$parse_invoke.invoke(compiler.clj:986) at cljs.compiler$analyze_seq.invoke(compiler.clj:1041) at cljs.compiler$analyze.invoke(compiler.clj:1093) at cljs.compiler$analyze.invoke(compiler.clj:1086) at cljs.compiler$analyze_file.invoke(compiler.clj:1112) at coding.server$_main.doInvoke(server.clj:12) at clojure.lang.RestFn.invoke(RestFn.java:397) at clojure.lang.Var.invoke(Var.java:397) at user$eval30.invoke(NO_SOURCE_FILE:1) at clojure.lang.Compiler.eval(Compiler.java:6465) ... 12 more

java -version java version "1.6.0_29" Java(TM) SE Runtime Environment (build 1.6.0_29-b11-402-10M3527) Java HotSpot(TM) 64-Bit Server VM (build 20.4-b02-402, mixed mode)

Looks like I'm running Leiningen 1.7.0 and Clojure 1.2.1 (the latter determined by examining the lein script).

claybridges commented 12 years ago

Ditto

claybridges commented 12 years ago

The readme gives a workaround fix:

rm -rf classes/cljs/

palfrey commented 12 years ago

Duplicate of #2

thosmos commented 11 years ago

The workaround doesn't work around me:

topaz:live-cljs thomas$ lein version Leiningen 2.0.0 on Java 1.7.0_09 Java HotSpot(TM) 64-Bit Server VM

topaz:live-cljs thomas$ rm -rf classes/cljs/ topaz:live-cljs thomas$ lein run DOING: goog.provide('coding.client.main'); goog.require('cljs.core'); goog.require('coding.client.util'); goog.require('waltz.state'); goog.require('coding.client.core'); goog.require('jayq.core'); goog.require('coding.client.editor'); goog.require('waltz.history'); goog.require('waltz.state'); goog.require('waltz.transition'); goog.require('monet.geometry'); goog.require('monet.canvas'); goog.require('clojure.string'); goog.require('clojure.browser.repl');

"Elapsed time: 56.814 msecs" Exception in thread "main" java.lang.RuntimeException: java.lang.AssertionError: Assert failed: Can't recur here frame at clojure.lang.Util.runtimeException(Util.java:165) at clojure.lang.Compiler.eval(Compiler.java:6476) at clojure.lang.Compiler.eval(Compiler.java:6455) at clojure.lang.Compiler.eval(Compiler.java:6431) at clojure.core$eval.invoke(core.clj:2795) at clojure.main$eval_opt.invoke(main.clj:296) at clojure.main$initialize.invoke(main.clj:315) at clojure.main$null_opt.invoke(main.clj:348) at clojure.main$main.doInvoke(main.clj:426) at clojure.lang.RestFn.invoke(RestFn.java:421) at clojure.lang.Var.invoke(Var.java:405) at clojure.lang.AFn.applyToHelper(AFn.java:163) at clojure.lang.Var.applyTo(Var.java:518) at clojure.main.main(main.java:37) Caused by: java.lang.AssertionError: Assert failed: Can't recur here frame at cljs.compiler$fn2094.invoke(compiler.clj:766) at clojure.lang.MultiFn.invoke(MultiFn.java:177) at cljs.compiler$analyze_seq.invoke(compiler.clj:1040) at cljs.compiler$analyze.invoke(compiler.clj:1093) at cljs.compiler$analyze.invoke(compiler.clj:1086) at cljs.compiler$fn2018.invoke(compiler.clj:606) at clojure.lang.MultiFn.invoke(MultiFn.java:177) at cljs.compiler$analyze_seq.invoke(compiler.clj:1040) at cljs.compiler$analyze.invoke(compiler.clj:1093) at cljs.compiler$analyze.invoke(compiler.clj:1086) at cljs.compiler$parse_invoke$fn2233.invoke(compiler.clj:986) at clojure.core$map$fn3811.invoke(core.clj:2432) at clojure.lang.LazySeq.sval(LazySeq.java:42) at clojure.lang.LazySeq.seq(LazySeq.java:60) at clojure.lang.Cons.next(Cons.java:39) at clojure.lang.PersistentVector.create(PersistentVector.java:50) at clojure.lang.LazilyPersistentVector.create(LazilyPersistentVector.java:31) at clojure.core$vec.invoke(core.clj:345) at cljs.compiler$parse_invoke.invoke(compiler.clj:986) at cljs.compiler$analyze_seq.invoke(compiler.clj:1041) at cljs.compiler$analyze.invoke(compiler.clj:1093) at cljs.compiler$analyze.invoke(compiler.clj:1086) at cljs.compiler$fn2018.invoke(compiler.clj:607) at clojure.lang.MultiFn.invoke(MultiFn.java:177) at cljs.compiler$analyze_seq.invoke(compiler.clj:1040) at cljs.compiler$analyze.invoke(compiler.clj:1093) at cljs.compiler$analyze.invoke(compiler.clj:1086) at cljs.compiler$parse_invoke$fn2233.invoke(compiler.clj:986) at clojure.core$map$fn3811.invoke(core.clj:2432) at clojure.lang.LazySeq.sval(LazySeq.java:42) at clojure.lang.LazySeq.seq(LazySeq.java:60) at clojure.lang.RT.seq(RT.java:466) at clojure.lang.LazilyPersistentVector.create(LazilyPersistentVector.java:31) at clojure.core$vec.invoke(core.clj:345) at cljs.compiler$parse_invoke.invoke(compiler.clj:986) at cljs.compiler$analyze_seq.invoke(compiler.clj:1041) at cljs.compiler$analyze.invoke(compiler.clj:1093) at cljs.compiler$analyze.invoke(compiler.clj:1086) at cljs.compiler$parse_invoke$fn2233.invoke(compiler.clj:986) at clojure.core$map$fn__3811.invoke(core.clj:2432) at clojure.lang.LazySeq.sval(LazySeq.java:42) at clojure.lang.LazySeq.seq(LazySeq.java:60) at clojure.lang.Cons.next(Cons.java:39) at clojure.lang.PersistentVector.create(PersistentVector.java:50) at clojure.lang.LazilyPersistentVector.create(LazilyPersistentVector.java:31) at clojure.core$vec.invoke(core.clj:345) at cljs.compiler$parse_invoke.invoke(compiler.clj:986) at cljs.compiler$analyze_seq.invoke(compiler.clj:1041) at cljs.compiler$analyze.invoke(compiler.clj:1093) at cljs.compiler$analyze.invoke(compiler.clj:1086) at cljs.compiler$analyze_file.invoke(compiler.clj:1112) at coding.server$_main.doInvoke(server.clj:12) at clojure.lang.RestFn.invoke(RestFn.java:397) at clojure.lang.Var.invoke(Var.java:397) at user$eval6.invoke(NO_SOURCE_FILE:1) at clojure.lang.Compiler.eval(Compiler.java:6465) ... 12 more

houshuang commented 11 years ago

Doesn't work for me either, crashes on first run, removing cljs does not help.

jashmenn commented 11 years ago

Same here

dwinston commented 11 years ago

Same

Jonovono commented 11 years ago

I did:

rm -rf target/classes/cljs and it works. 
svdmitrij commented 11 years ago

@Jonovono Thank you! rm -rf target/classes/cljs help.

dwinston commented 11 years ago

Yes! Cool.

rm -rf target/classes/cljs

works for me, whereas

rm -rf classes/cljs

as currently specified in the readme does not. I am running Ubuntu 12.04.

jsomedon commented 10 years ago

Thanks Jonovono!