Skip to content

Instantly share code, notes, and snippets.

@fasterthanlime
Created November 25, 2014 12:41
Show Gist options
  • Save fasterthanlime/17653d8e093e105307c2 to your computer and use it in GitHub Desktop.
Save fasterthanlime/17653d8e093e105307c2 to your computer and use it in GitHub Desktop.
Oh cljs...
(ns wtf_require.client)
(defprotocol IShout
(-shout [this]))
(deftype Dog
IShout
(-shout [this]
(prn "Dog shout, Arity 1")))
; (prn (shout (Dog.)))
Compiling ClojureScript.
Compiling "resources/public/js/cljs.js" from ["src/cljs"]...
Compiling "resources/public/js/cljs.js" failed.
clojure.lang.ExceptionInfo: failed compiling file:src/cljs/wtf_require/client.cljs
core.clj:4327 clojure.core/ex-info
compiler.clj:1006 cljs.compiler/compile-file
compiler.clj:1058 cljs.compiler/compile-root
closure.clj:447 cljs.closure/compile-dir
closure.clj:487 cljs.closure/eval2887[fn]
closure.clj:350 cljs.closure/eval2813[fn]
closure.clj:501 cljs.closure/eval2874[fn]
closure.clj:350 cljs.closure/eval2813[fn]
compiler.clj:44 cljsbuild.compiler.SourcePaths/fn
core.clj:2485 clojure.core/map[fn]
LazySeq.java:42 clojure.lang.LazySeq.sval
LazySeq.java:60 clojure.lang.LazySeq.seq
RT.java:484 clojure.lang.RT.seq
core.clj:133 clojure.core/seq
core.clj:617 clojure.core/apply
core.clj:2514 clojure.core/mapcat
RestFn.java:423 clojure.lang.RestFn.invoke
compiler.clj:44 cljsbuild.compiler/cljsbuild.compiler.SourcePaths
closure.clj:1141 cljs.closure/build
closure.clj:1110 cljs.closure/build
compiler.clj:58 cljsbuild.compiler/compile-cljs[fn]
compiler.clj:57 cljsbuild.compiler/compile-cljs
compiler.clj:159 cljsbuild.compiler/run-compiler
form-init1658174411358745566.clj:1 user/eval3257[fn]
form-init1658174411358745566.clj:1 user/eval3257[fn]
LazySeq.java:42 clojure.lang.LazySeq.sval
LazySeq.java:60 clojure.lang.LazySeq.seq
RT.java:484 clojure.lang.RT.seq
core.clj:133 clojure.core/seq
core.clj:2780 clojure.core/dorun
core.clj:2796 clojure.core/doall
form-init1658174411358745566.clj:1 user/eval3257
Compiler.java:6619 clojure.lang.Compiler.eval
Compiler.java:6609 clojure.lang.Compiler.eval
Compiler.java:7064 clojure.lang.Compiler.load
Compiler.java:7020 clojure.lang.Compiler.loadFile
main.clj:294 clojure.main/load-script
main.clj:299 clojure.main/init-opt
main.clj:327 clojure.main/initialize
main.clj:362 clojure.main/null-opt
main.clj:440 clojure.main/main
RestFn.java:421 clojure.lang.RestFn.invoke
Var.java:419 clojure.lang.Var.invoke
AFn.java:163 clojure.lang.AFn.applyToHelper
Var.java:532 clojure.lang.Var.applyTo
main.java:37 clojure.main.main
Caused by: clojure.lang.ExceptionInfo: clojure.lang.PersistentList cannot be cast to clojure.lang.Named
core.clj:4327 clojure.core/ex-info
analyzer.clj:265 cljs.analyzer/error
analyzer.clj:1496 cljs.analyzer/analyze
analyzer.clj:1493 cljs.analyzer/analyze
compiler.clj:885 cljs.compiler/compile-file*
compiler.clj:999 cljs.compiler/compile-file
Caused by: java.lang.ClassCastException: clojure.lang.PersistentList cannot be cast to clojure.lang.Named
core.clj:1513 clojure.core/namespace
analyzer.clj:310 cljs.analyzer/resolve-var
analyzer.clj:308 cljs.analyzer/resolve-var
core.clj:651 cljs.core/resolve-var
AFn.java:163 clojure.lang.AFn.applyToHelper
AFn.java:151 clojure.lang.AFn.applyTo
core.clj:619 clojure.core/apply
core.clj:2396 clojure.core/partial[fn]
RestFn.java:408 clojure.lang.RestFn.invoke
core.clj:2487 clojure.core/map[fn]
LazySeq.java:42 clojure.lang.LazySeq.sval
LazySeq.java:60 clojure.lang.LazySeq.seq
RT.java:484 clojure.lang.RT.seq
core.clj:133 clojure.core/seq
core.clj:6593 clojure.core/keep[fn]
LazySeq.java:42 clojure.lang.LazySeq.sval
LazySeq.java:60 clojure.lang.LazySeq.seq
RT.java:484 clojure.lang.RT.seq
core.clj:133 clojure.core/seq
core.clj:782 cljs.core/prepare-protocol-masks
core.clj:835 cljs.core/deftype
RestFn.java:151 clojure.lang.RestFn.applyTo
AFunction.java:29 clojure.lang.AFunction$1.doInvoke
RestFn.java:137 clojure.lang.RestFn.applyTo
core.clj:621 clojure.core/apply
analyzer.clj:1376 cljs.analyzer/macroexpand-1
analyzer.clj:1412 cljs.analyzer/analyze-seq
analyzer.clj:1505 cljs.analyzer/analyze[fn]
analyzer.clj:1498 cljs.analyzer/analyze
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment