[ANN] Clojure 1.8.0-alpha4

767 views
Skip to first unread message

Alex Miller

unread,
Aug 3, 2015, 8:32:37 AM8/3/15
to Clojure
Clojure 1.8.0-alpha4 is now available.

Try it via
- Leiningen: [org.clojure/clojure "1.8.0-alpha4"]

Below is a list of the tickets included in this release (about half were added in alpha2, the rest in alpha4). Also see the full change log here: https://github.com/clojure/clojure/blob/master/changes.md
  • CLJ-1060 'list*' returns not a list
  • CLJ-1722 Typo in the docstring of 'with-bindings'
  • CLJ-1769 Docstrings for *' and +' refer to * and +
  • CLJ-703 Improve writeClassFile performance
  • CLJ-1208 Optionally require namespace on defrecord class init
  • CLJ-130 Namespace metadata lost in AOT compile
  • CLJ-1134 star-directive in clojure.pprint/cl-format with at-prefix ("~n@*") does not obey its specification
  • CLJ-1137 Metadata on a def gets evaluated twice
  • CLJ-1157 Classes generated by gen-class aren't loadable from remote codebase
  • CLJ-1225 quot overflow issues around Long/MIN_VALUE for BigInt
  • CLJ-1250 Reducer (and folder) instances hold onto the head of seqs
  • CLJ-1313 Correct a few unit tests
  • CLJ-1319 array-map fails lazily if passed an odd number of arguments
  • CLJ-1361 pprint with code-dispatch incorrectly prints a simple ns macro call
  • CLJ-1390 pprint a GregorianCalendar results in Arity exception
  • CLJ-1399 field name unmunged when recreating deftypes serialized into bytecode
  • CLJ-1485 clojure.test.junit/with-junit-output doesn't handle multiple expressions
  • CLJ-1528 clojure.test/inc-report-counter is not thread-safe
  • CLJ-1533 invokePrim path does not take into account var or form meta
  • CLJ-1562 some->,some->>,cond->,cond->> and as-> doesn't work with (recur)
  • CLJ-1565 pprint produces infinite output for a protocol
  • CLJ-1588 StackOverflow in clojure.test macroexpand with are and anon fn
  • CLJ-1644 into-array fails for sequences starting with nil
  • CLJ-1645 protocol class does not set the source file
  • CLJ-1657 proxy bytecode calls super methods of abstract classes
  • CLJ-1659 compile leaks files
  • CLJ-1761 clojure.core/run! does not always return nil per docstring
  • CLJ-1782 Spelling mistake in clojure.test/use-fixtures
  • CLJ-1785 Reader conditionals throw when returning nil

Alex Miller

unread,
Aug 3, 2015, 9:24:43 AM8/3/15
to Clojure
Few bugs corrected below.


On Monday, August 3, 2015 at 7:32:37 AM UTC-5, Alex Miller wrote:
Clojure 1.8.0-alpha4 is now available.

Try it via
- Leiningen: [org.clojure/clojure "1.8.0-alpha4"]

Below is a list of the tickets included in this release (about half were added in alpha2, the rest in alpha4). Also see the full change log here: https://github.com/clojure/clojure/blob/master/changes.md
  • CLJ-1060 'list*' returns not a list
  • CLJ-1722 Typo in the docstring of 'with-bindings'
  • CLJ-1769 Docstrings for *' and +' refer to * and +
  • CLJ-703 Improve writeClassFile performance
  • CLJ-1208 Optionally require namespace on defrecord class init
  • CLJ-130 Namespace metadata lost in AOT compile
  • CLJ-1134 star-directive in clojure.pprint/cl-format with at-prefix ("~n@*") does not obey its specification
  • CLJ-1137 Metadata on a def gets evaluated twice
  • CLJ-1157 Classes generated by gen-class aren't loadable from remote codebase
  • CLJ-1225 quot overflow issues around Long/MIN_VALUE for BigInt
  • CLJ-1250 Reducer (and folder) instances hold onto the head of seqs
  • CLJ-1313 Correct a few unit tests
  • CLJ-1319 array-map fails lazily if passed an odd number of arguments
CLJ-1319 Was ok'ed but not yet applied.
 
  • CLJ-1361 pprint with code-dispatch incorrectly prints a simple ns macro call
  • CLJ-1390 pprint a GregorianCalendar results in Arity exception
  • CLJ-1399 field name unmunged when recreating deftypes serialized into bytecode
  • CLJ-1485 clojure.test.junit/with-junit-output doesn't handle multiple expressions
  • CLJ-1528 clojure.test/inc-report-counter is not thread-safe
  • CLJ-1533 invokePrim path does not take into account var or form meta
  • CLJ-1562 some->,some->>,cond->,cond->> and as-> doesn't work with (recur)
  • CLJ-1565 pprint produces infinite output for a protocol
  • CLJ-1588 StackOverflow in clojure.test macroexpand with are and anon fn
  • CLJ-1644 into-array fails for sequences starting with nil
  • CLJ-1645 protocol class does not set the source file
  • CLJ-1657 proxy bytecode calls super methods of abstract classes
  • CLJ-1659 compile leaks files
  • CLJ-1761 clojure.core/run! does not always return nil per docstring
  • CLJ-1782 Spelling mistake in clojure.test/use-fixtures
Typo - should have been CLJ-1772 

Qihui Sun

unread,
Aug 3, 2015, 10:18:26 AM8/3/15
to clo...@googlegroups.com
Congratulations. Maybe the performance optimization based on new JVM Graal/Truffle is the correct way. For instance:  http://ssw.jku.at/Teaching/MasterTheses/Graal/TruffleClojure.pdf
Do the Clojure core team have the plan ?

--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clo...@googlegroups.com
Note that posts from new members are moderated - please be patient with your first post.
To unsubscribe from this group, send email to
clojure+u...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
---
You received this message because you are subscribed to the Google Groups "Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email to clojure+u...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--


Qihui Sun

unread,
Aug 3, 2015, 10:24:42 AM8/3/15
to clo...@googlegroups.com

Alex Miller

unread,
Aug 3, 2015, 10:40:37 AM8/3/15
to Clojure
No, there are no plans to integrate this work.

Rangel Spasov

unread,
Aug 3, 2015, 7:51:45 PM8/3/15
to Clojure
Thanks for the new alpha everyone!

Getting a compiler error below.

I think it's because of:


(defn ^int session-port
  "Return the port for a session"
  [^Session session]
  (.getPort session))

Is this by design?

Rangel

#error {

 :cause Only long and double primitives are supported

 :via

 [{:type clojure.lang.Compiler$CompilerException

   :message java.lang.IllegalArgumentException: Only long and double primitives are supported, compiling:(clj_ssh/ssh.clj:345:1)

   :at [clojure.lang.Compiler analyzeSeq Compiler.java 6894]}

  {:type java.lang.IllegalArgumentException

   :message Only long and double primitives are supported

   :at [clojure.lang.Compiler$FnMethod parse Compiler.java 5312]}]

 :trace

 [[clojure.lang.Compiler$FnMethod parse Compiler.java 5312]

  [clojure.lang.Compiler$FnExpr parse Compiler.java 3975]

  [clojure.lang.Compiler analyzeSeq Compiler.java 6885]

  [clojure.lang.Compiler analyze Compiler.java 6688]

  [clojure.lang.Compiler analyzeSeq Compiler.java 6875]

  [clojure.lang.Compiler analyze Compiler.java 6688]

  [clojure.lang.Compiler access$300 Compiler.java 38]

  [clojure.lang.Compiler$DefExpr$Parser parse Compiler.java 593]

  [clojure.lang.Compiler analyzeSeq Compiler.java 6887]

  [clojure.lang.Compiler analyze Compiler.java 6688]

  [clojure.lang.Compiler analyze Compiler.java 6649]

  [clojure.lang.Compiler eval Compiler.java 6950]

  [clojure.lang.Compiler load Compiler.java 7393]

  [clojure.lang.RT loadResourceScript RT.java 372]

  [clojure.lang.RT loadResourceScript RT.java 363]

  [clojure.lang.RT load RT.java 453]

  [clojure.lang.RT load RT.java 419]

  [clojure.core$load$fn__5445 invoke core.clj 5871]

  [clojure.core$load invokeStatic core.clj 5870]

  [clojure.core$load_one invokeStatic core.clj 5671]

  [clojure.core$load_one invoke core.clj -1]

  [clojure.core$load_lib$fn__5394 invoke core.clj 5716]

  [clojure.core$load_lib invokeStatic core.clj 5715]

  [clojure.core$load_lib doInvoke core.clj -1]

  [clojure.lang.RestFn applyTo RestFn.java 142]

  [clojure.core$apply invokeStatic core.clj 635]

  [clojure.core$load_libs invokeStatic core.clj 5753]

  [clojure.core$load_libs doInvoke core.clj -1]

  [clojure.lang.RestFn applyTo RestFn.java 137]

  [clojure.core$apply invokeStatic core.clj 635]

  [clojure.core$require invokeStatic core.clj 5775]

  [clojure.core$require doInvoke core.clj -1]

  [clojure.lang.RestFn invoke RestFn.java 930]

  [cloud_monkey.ssh$eval21651$loading__5337__auto____21652 invoke ssh.clj 1]

  [cloud_monkey.ssh$eval21651 invokeStatic ssh.clj 1]

  [cloud_monkey.ssh$eval21651 invoke ssh.clj -1]

  [clojure.lang.Compiler eval Compiler.java 6946]

  [clojure.lang.Compiler eval Compiler.java 6935]

  [clojure.lang.Compiler load Compiler.java 7393]

  [clojure.lang.RT loadResourceScript RT.java 372]

  [clojure.lang.RT loadResourceScript RT.java 363]

  [clojure.lang.RT load RT.java 453]

  [clojure.lang.RT load RT.java 419]

  [clojure.core$load$fn__5445 invoke core.clj 5871]

  [clojure.core$load invokeStatic core.clj 5870]

  [clojure.core$load_one invokeStatic core.clj 5671]

  [clojure.core$load_one invoke core.clj -1]

  [clojure.core$load_lib$fn__5394 invoke core.clj 5716]

  [clojure.core$load_lib invokeStatic core.clj 5715]

  [clojure.core$load_lib doInvoke core.clj -1]

  [clojure.lang.RestFn applyTo RestFn.java 142]

  [clojure.core$apply invokeStatic core.clj 635]

  [clojure.core$load_libs invokeStatic core.clj 5753]

  [clojure.core$load_libs doInvoke core.clj -1]

  [clojure.lang.RestFn applyTo RestFn.java 137]

  [clojure.core$apply invokeStatic core.clj 635]

  [clojure.core$require invokeStatic core.clj 5775]

  [clojure.core$require doInvoke core.clj -1]

  [clojure.lang.RestFn invoke RestFn.java 1289]

  [cloud_monkey.execution_pipeline$eval21645$loading__5337__auto____21646 invoke execution_pipeline.clj 1]

  [cloud_monkey.execution_pipeline$eval21645 invokeStatic execution_pipeline.clj 1]

  [cloud_monkey.execution_pipeline$eval21645 invoke execution_pipeline.clj -1]

  [clojure.lang.Compiler eval Compiler.java 6946]

  [clojure.lang.Compiler eval Compiler.java 6935]

  [clojure.lang.Compiler load Compiler.java 7393]

  [clojure.lang.RT loadResourceScript RT.java 372]

  [clojure.lang.RT loadResourceScript RT.java 363]

  [clojure.lang.RT load RT.java 453]

  [clojure.lang.RT load RT.java 419]

  [clojure.core$load$fn__5445 invoke core.clj 5871]

  [clojure.core$load invokeStatic core.clj 5870]

  [clojure.core$load_one invokeStatic core.clj 5671]

  [clojure.core$load_one invoke core.clj -1]

  [clojure.core$load_lib$fn__5394 invoke core.clj 5716]

  [clojure.core$load_lib invokeStatic core.clj 5715]

  [clojure.core$load_lib doInvoke core.clj -1]

  [clojure.lang.RestFn applyTo RestFn.java 142]

  [clojure.core$apply invokeStatic core.clj 635]

  [clojure.core$load_libs invokeStatic core.clj 5753]

  [clojure.core$load_libs doInvoke core.clj -1]

  [clojure.lang.RestFn applyTo RestFn.java 137]

  [clojure.core$apply invokeStatic core.clj 635]

  [clojure.core$require invokeStatic core.clj 5775]

  [clojure.core$require doInvoke core.clj -1]

  [clojure.lang.RestFn invoke RestFn.java 1523]

  [cloud_monkey.events$eval21639$loading__5337__auto____21640 invoke events.clj 1]

  [cloud_monkey.events$eval21639 invokeStatic events.clj 1]

  [cloud_monkey.events$eval21639 invoke events.clj -1]

  [clojure.lang.Compiler eval Compiler.java 6946]

  [clojure.lang.Compiler eval Compiler.java 6935]

  [clojure.lang.Compiler load Compiler.java 7393]

  [clojure.lang.RT loadResourceScript RT.java 372]

  [clojure.lang.RT loadResourceScript RT.java 363]

  [clojure.lang.RT load RT.java 453]

  [clojure.lang.RT load RT.java 419]

  [clojure.core$load$fn__5445 invoke core.clj 5871]

  [clojure.core$load invokeStatic core.clj 5870]

  [clojure.core$load_one invokeStatic core.clj 5671]

  [clojure.core$load_one invoke core.clj -1]

  [clojure.core$load_lib$fn__5394 invoke core.clj 5716]

  [clojure.core$load_lib invokeStatic core.clj 5715]

  [clojure.core$load_lib doInvoke core.clj -1]

  [clojure.lang.RestFn applyTo RestFn.java 142]

  [clojure.core$apply invokeStatic core.clj 635]

  [clojure.core$load_libs invokeStatic core.clj 5753]

  [clojure.core$load_libs doInvoke core.clj -1]

  [clojure.lang.RestFn applyTo RestFn.java 137]

  [clojure.core$apply invokeStatic core.clj 635]

  [clojure.core$require invokeStatic core.clj 5775]

  [clojure.core$require doInvoke core.clj -1]

  [clojure.lang.RestFn invoke RestFn.java 1789]

  [cloud_monkey.aleph_netty$eval1614$loading__5337__auto____1615 invoke aleph_netty.clj 1]

  [cloud_monkey.aleph_netty$eval1614 invokeStatic aleph_netty.clj 1]

  [cloud_monkey.aleph_netty$eval1614 invoke aleph_netty.clj -1]

  [clojure.lang.Compiler eval Compiler.java 6946]

  [clojure.lang.Compiler eval Compiler.java 6935]

  [clojure.lang.Compiler load Compiler.java 7393]

  [clojure.lang.RT loadResourceScript RT.java 372]

  [clojure.lang.RT loadResourceScript RT.java 363]

  [clojure.lang.RT load RT.java 453]

  [clojure.lang.RT load RT.java 419]

  [clojure.core$load$fn__5445 invoke core.clj 5871]

  [clojure.core$load invokeStatic core.clj 5870]

  [clojure.core$load_one invokeStatic core.clj 5671]

  [clojure.core$load_one invoke core.clj -1]

  [clojure.core$load_lib$fn__5394 invoke core.clj 5716]

  [clojure.core$load_lib invokeStatic core.clj 5715]

  [clojure.core$load_lib doInvoke core.clj -1]

  [clojure.lang.RestFn applyTo RestFn.java 142]

  [clojure.core$apply invokeStatic core.clj 635]

  [clojure.core$load_libs invokeStatic core.clj 5753]

  [clojure.core$load_libs doInvoke core.clj -1]

  [clojure.lang.RestFn applyTo RestFn.java 137]

  [clojure.core$apply invokeStatic core.clj 635]

  [clojure.core$require invokeStatic core.clj 5775]

  [clojure.core$require doInvoke core.clj -1]

  [clojure.lang.RestFn invoke RestFn.java 512]

  [cloud_monkey.core$eval14$loading__5337__auto____15 invoke core.clj 1]

  [cloud_monkey.core$eval14 invokeStatic core.clj 1]

  [cloud_monkey.core$eval14 invoke core.clj -1]

  [clojure.lang.Compiler eval Compiler.java 6946]

  [clojure.lang.Compiler eval Compiler.java 6935]

  [clojure.lang.Compiler load Compiler.java 7393]

  [clojure.lang.RT loadResourceScript RT.java 372]

  [clojure.lang.RT loadResourceScript RT.java 363]

  [clojure.lang.RT load RT.java 453]

  [clojure.lang.RT load RT.java 419]

  [clojure.core$load$fn__5445 invoke core.clj 5871]

  [clojure.core$load invokeStatic core.clj 5870]

  [clojure.core$load_one invokeStatic core.clj 5671]

  [clojure.core$load_one invoke core.clj -1]

  [clojure.core$load_lib$fn__5394 invoke core.clj 5716]

  [clojure.core$load_lib invokeStatic core.clj 5715]

  [clojure.core$load_lib doInvoke core.clj -1]

  [clojure.lang.RestFn applyTo RestFn.java 142]

  [clojure.core$apply invokeStatic core.clj 635]

  [clojure.core$load_libs invokeStatic core.clj 5753]

  [clojure.core$load_libs doInvoke core.clj -1]

  [clojure.lang.RestFn applyTo RestFn.java 137]

  [clojure.core$apply invokeStatic core.clj 635]

  [clojure.core$require invokeStatic core.clj 5775]

  [clojure.core$require doInvoke core.clj -1]

  [clojure.lang.RestFn invoke RestFn.java 408]

  [user$eval5 invokeStatic form-init829079516065028356.clj 1]

  [user$eval5 invoke form-init829079516065028356.clj -1]

  [clojure.lang.Compiler eval Compiler.java 6946]

  [clojure.lang.Compiler eval Compiler.java 6935]

  [clojure.lang.Compiler eval Compiler.java 6935]

  [clojure.lang.Compiler load Compiler.java 7393]

  [clojure.lang.Compiler loadFile Compiler.java 7331]

  [clojure.main$load_script invokeStatic main.clj 275]

  [clojure.main$init_opt invokeStatic main.clj 277]

  [clojure.main$init_opt invoke main.clj -1]

  [clojure.main$initialize invokeStatic main.clj 308]

  [clojure.main$null_opt invokeStatic main.clj 342]

  [clojure.main$null_opt invoke main.clj -1]

  [clojure.main$main invokeStatic main.clj 421]

  [clojure.main$main doInvoke main.clj -1]

  [clojure.lang.RestFn invoke RestFn.java 421]

  [clojure.lang.Var invoke Var.java 383]

  [clojure.lang.AFn applyToHelper AFn.java 156]

  [clojure.lang.Var applyTo Var.java 700]

  [clojure.main main main.java 37]]}

Dragan Djuric

unread,
Aug 4, 2015, 2:52:04 AM8/4/15
to Clojure
Clojure only supports long and double primitives as function hints. You are using int; it didn't work with pre-1.8.0 clojure.

Nicola Mometto

unread,
Aug 4, 2015, 8:23:19 AM8/4/15
to clo...@googlegroups.com

There is some weirdeness going on with the new release.
Compare:

Clojure 1.7.0
user=> (def foo String)
#'user/foo
user=> (defn ^{:tag foo} a [])
#'user/a

with

Clojure 1.8.0-master-SNAPSHOT
user=> (def foo String)
#'user/foo
user=> (defn ^{:tag foo} a [])
CompilerException java.lang.IllegalArgumentException: Unable to resolve
classname: foo, compiling:(NO_SOURCE_PATH:2:1)

It loooks like clojure is now trying to use a value that should be available at
runtime (after evaluation) at compile time (using the literal form).

I realize this might be necessary, clojure already does something
similar with :arglists (that causes some issues too) or even
inevitable but I fear this will start affecting more and more tools
writers.

Perharps this calls for an official clarification/specification of how
:tag (and :arglists) is evaluated in the different places it can be
used, what values are possible and what should be considered an
error/undefined behaviour.

Dragan Djuric writes:

> Clojure only supports long and double primitives as function hints. You are using int; it didn't work with pre-1.8.0 clojure.

--

Dragan Djuric

unread,
Aug 5, 2015, 9:20:14 AM8/5/15
to Clojure
Trying to compile an application using ztellman/vertigo 1.3.0 library. Worked with Clojure 1.7.0, Clojure 1.8.0-alpha4 raises the following exception:
An app that worked with vertigo 1.3.0 and Clojure 1.7.0 causes the following exception in the Clojure compiler:
java.lang.NoClassDefFoundError: IllegalName: compile__stub.vertigo.bytes.vertigo.bytes/ByteSeq, compiling:(vertigo/bytes.clj:90:1)
at clojure.lang.Compiler.analyzeSeq(Compiler.java:6894)
at clojure.lang.Compiler.analyze(Compiler.java:6688)
at clojure.lang.Compiler.analyze(Compiler.java:6649)
at clojure.lang.Compiler$BodyExpr$Parser.parse(Compiler.java:6025)
at clojure.lang.Compiler$LetExpr$Parser.parse(Compiler.java:6343)
at clojure.lang.Compiler.analyzeSeq(Compiler.java:6887)
at clojure.lang.Compiler.analyze(Compiler.java:6688)
at clojure.lang.Compiler.analyze(Compiler.java:6649)
at clojure.lang.Compiler$BodyExpr$Parser.parse(Compiler.java:6025)
at clojure.lang.Compiler$FnMethod.parse(Compiler.java:5401)
at clojure.lang.Compiler$FnExpr.parse(Compiler.java:3975)
at clojure.lang.Compiler.analyzeSeq(Compiler.java:6885)
at clojure.lang.Compiler.analyze(Compiler.java:6688)
at clojure.lang.Compiler.analyze(Compiler.java:6649)
at clojure.lang.Compiler$InvokeExpr.parse(Compiler.java:3769)
at clojure.lang.Compiler.analyzeSeq(Compiler.java:6889)
at clojure.lang.Compiler.analyze(Compiler.java:6688)
at clojure.lang.Compiler.analyze(Compiler.java:6649)
at clojure.lang.Compiler$LetExpr$Parser.parse(Compiler.java:6255)
at clojure.lang.Compiler.analyzeSeq(Compiler.java:6887)
at clojure.lang.Compiler.analyze(Compiler.java:6688)
at clojure.lang.Compiler.analyze(Compiler.java:6649)
at clojure.lang.Compiler.compile1(Compiler.java:7483)
at clojure.lang.Compiler.compile(Compiler.java:7555)
at clojure.lang.RT.compile(RT.java:406)
at clojure.lang.RT.load(RT.java:451)
at clojure.lang.RT.load(RT.java:419)
at clojure.core$load$fn__5445.invoke(core.clj:5871)
at clojure.core$load.invokeStatic(core.clj:5870)
at clojure.core$load_one.invokeStatic(core.clj:5671)
at clojure.core$load_one.invoke(core.clj)
at clojure.core$load_lib$fn__5394.invoke(core.clj:5716)
at clojure.core$load_lib.invokeStatic(core.clj:5715)
at clojure.core$load_lib.doInvoke(core.clj)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invokeStatic(core.clj:635)
at clojure.core$load_libs.invokeStatic(core.clj:5753)
at clojure.core$load_libs.doInvoke(core.clj)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invokeStatic(core.clj:635)
at clojure.core$require.invokeStatic(core.clj:5775)
at clojure.core$require.doInvoke(core.clj)
at clojure.lang.RestFn.invoke(RestFn.java:457)
at vertigo.structs$loading__5337__auto____3313.invoke(structs.clj:1)
at clojure.lang.AFn.applyToHelper(AFn.java:152)
at clojure.lang.AFn.applyTo(AFn.java:144)
at clojure.lang.Compiler$InvokeExpr.eval(Compiler.java:3654)
at clojure.lang.Compiler.compile1(Compiler.java:7488)
at clojure.lang.Compiler.compile1(Compiler.java:7478)
at clojure.lang.Compiler.compile(Compiler.java:7555)
at clojure.lang.RT.compile(RT.java:406)
at clojure.lang.RT.load(RT.java:451)
at clojure.lang.RT.load(RT.java:419)
at clojure.core$load$fn__5445.invoke(core.clj:5871)
at clojure.core$load.invokeStatic(core.clj:5870)
at clojure.core$load_one.invokeStatic(core.clj:5671)
at clojure.core$load_one.invoke(core.clj)
at clojure.core$load_lib$fn__5394.invoke(core.clj:5716)
at clojure.core$load_lib.invokeStatic(core.clj:5715)
at clojure.core$load_lib.doInvoke(core.clj)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invokeStatic(core.clj:635)
at clojure.core$load_libs.invokeStatic(core.clj:5753)
at clojure.core$load_libs.doInvoke(core.clj)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invokeStatic(core.clj:635)
at clojure.core$require.invokeStatic(core.clj:5775)
at clojure.core$require.doInvoke(core.clj)
at clojure.lang.RestFn.invoke(RestFn.java:551)
at vertigo.core$loading__5337__auto____1375.invoke(core.clj:1)
at clojure.lang.AFn.applyToHelper(AFn.java:152)
at clojure.lang.AFn.applyTo(AFn.java:144)
at clojure.lang.Compiler$InvokeExpr.eval(Compiler.java:3654)
at clojure.lang.Compiler.compile1(Compiler.java:7488)
at clojure.lang.Compiler.compile1(Compiler.java:7478)
at clojure.lang.Compiler.compile(Compiler.java:7555)
at clojure.lang.RT.compile(RT.java:406)
at clojure.lang.RT.load(RT.java:451)
at clojure.lang.RT.load(RT.java:419)
at clojure.core$load$fn__5445.invoke(core.clj:5871)
at clojure.core$load.invokeStatic(core.clj:5870)
at clojure.core$load_one.invokeStatic(core.clj:5671)
at clojure.core$load_one.invoke(core.clj)
at clojure.core$load_lib$fn__5394.invoke(core.clj:5716)
at clojure.core$load_lib.invokeStatic(core.clj:5715)
at clojure.core$load_lib.doInvoke(core.clj)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invokeStatic(core.clj:635)
at clojure.core$load_libs.invokeStatic(core.clj:5757)
at clojure.core$load_libs.doInvoke(core.clj)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invokeStatic(core.clj:635)
at clojure.core$require.invokeStatic(core.clj:5775)
at clojure.core$require.doInvoke(core.clj)
at clojure.lang.RestFn.invoke(RestFn.java:436)
at uncomplicate.neanderthal.impl.buffer_block$loading__5337__auto____1373.invoke(buffer_block.clj:1)
at clojure.lang.AFn.applyToHelper(AFn.java:152)
at clojure.lang.AFn.applyTo(AFn.java:144)
at clojure.lang.Compiler$InvokeExpr.eval(Compiler.java:3654)
at clojure.lang.Compiler.compile1(Compiler.java:7488)
at clojure.lang.Compiler.compile1(Compiler.java:7478)
at clojure.lang.Compiler.compile(Compiler.java:7555)
at clojure.lang.RT.compile(RT.java:406)
at clojure.lang.RT.load(RT.java:451)
at clojure.lang.RT.load(RT.java:419)
at clojure.core$load$fn__5445.invoke(core.clj:5871)
at clojure.core$load.invokeStatic(core.clj:5870)
at clojure.core$load_one.invokeStatic(core.clj:5671)
at clojure.core$compile$fn__5450.invoke(core.clj:5881)
at clojure.core$compile.invokeStatic(core.clj:5881)
at clojure.core$compile.invoke(core.clj)
at user$eval1022$fn__1029.invoke(form-init6809606777108778687.clj:1)
at user$eval1022.invokeStatic(form-init6809606777108778687.clj:1)
at user$eval1022.invoke(form-init6809606777108778687.clj)
at clojure.lang.Compiler.eval(Compiler.java:6946)
at clojure.lang.Compiler.eval(Compiler.java:6936)
at clojure.lang.Compiler.load(Compiler.java:7393)
at clojure.lang.Compiler.loadFile(Compiler.java:7331)
at clojure.main$load_script.invokeStatic(main.clj:275)
at clojure.main$init_opt.invokeStatic(main.clj:277)
at clojure.main$init_opt.invoke(main.clj)
at clojure.main$initialize.invokeStatic(main.clj:308)
at clojure.main$null_opt.invokeStatic(main.clj:342)
at clojure.main$null_opt.invoke(main.clj)
at clojure.main$main.invokeStatic(main.clj:421)
at clojure.main$main.doInvoke(main.clj)
at clojure.lang.RestFn.invoke(RestFn.java:421)
at clojure.lang.Var.invoke(Var.java:383)
at clojure.lang.AFn.applyToHelper(AFn.java:156)
at clojure.lang.Var.applyTo(Var.java:700)
at clojure.main.main(main.java:37)
Caused by: java.lang.NoClassDefFoundError: IllegalName: compile__stub.vertigo.bytes.vertigo.bytes/ByteSeq
at java.lang.ClassLoader.preDefineClass(ClassLoader.java:654)
at java.lang.ClassLoader.defineClass(ClassLoader.java:758)
at java.lang.ClassLoader.defineClass(ClassLoader.java:642)
at clojure.lang.DynamicClassLoader.defineClass(DynamicClassLoader.java:46)
at clojure.lang.Compiler$NewInstanceExpr.compileStub(Compiler.java:7913)
at clojure.lang.Compiler$NewInstanceExpr.build(Compiler.java:7778)
at clojure.lang.Compiler$NewInstanceExpr$DeftypeParser.parse(Compiler.java:7688)
at clojure.lang.Compiler.analyzeSeq(Compiler.java:6887)
... 130 more
Exception in thread "main" java.lang.NoClassDefFoundError: IllegalName: compile__stub.vertigo.bytes.vertigo.bytes/ByteSeq, compiling:(vertigo/bytes.clj:90:1)
at clojure.lang.Compiler.analyzeSeq(Compiler.java:6894)
at clojure.lang.Compiler.analyze(Compiler.java:6688)
at clojure.lang.Compiler.analyze(Compiler.java:6649)
at clojure.lang.Compiler$BodyExpr$Parser.parse(Compiler.java:6025)
at clojure.lang.Compiler$LetExpr$Parser.parse(Compiler.java:6343)
at clojure.lang.Compiler.analyzeSeq(Compiler.java:6887)
at clojure.lang.Compiler.analyze(Compiler.java:6688)
at clojure.lang.Compiler.analyze(Compiler.java:6649)
at clojure.lang.Compiler$BodyExpr$Parser.parse(Compiler.java:6025)
at clojure.lang.Compiler$FnMethod.parse(Compiler.java:5401)
at clojure.lang.Compiler$FnExpr.parse(Compiler.java:3975)
at clojure.lang.Compiler.analyzeSeq(Compiler.java:6885)
at clojure.lang.Compiler.analyze(Compiler.java:6688)
at clojure.lang.Compiler.analyze(Compiler.java:6649)
at clojure.lang.Compiler$InvokeExpr.parse(Compiler.java:3769)
at clojure.lang.Compiler.analyzeSeq(Compiler.java:6889)
at clojure.lang.Compiler.analyze(Compiler.java:6688)
at clojure.lang.Compiler.analyze(Compiler.java:6649)
at clojure.lang.Compiler$LetExpr$Parser.parse(Compiler.java:6255)
at clojure.lang.Compiler.analyzeSeq(Compiler.java:6887)
at clojure.lang.Compiler.analyze(Compiler.java:6688)
at clojure.lang.Compiler.analyze(Compiler.java:6649)
at clojure.lang.Compiler.compile1(Compiler.java:7483)
at clojure.lang.Compiler.compile(Compiler.java:7555)
at clojure.lang.RT.compile(RT.java:406)
at clojure.lang.RT.load(RT.java:451)
at clojure.lang.RT.load(RT.java:419)
at clojure.core$load$fn__5445.invoke(core.clj:5871)
at clojure.core$load.invokeStatic(core.clj:5870)
at clojure.core$load_one.invokeStatic(core.clj:5671)
at clojure.core$load_one.invoke(core.clj)
at clojure.core$load_lib$fn__5394.invoke(core.clj:5716)
at clojure.core$load_lib.invokeStatic(core.clj:5715)
at clojure.core$load_lib.doInvoke(core.clj)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invokeStatic(core.clj:635)
at clojure.core$load_libs.invokeStatic(core.clj:5753)
at clojure.core$load_libs.doInvoke(core.clj)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invokeStatic(core.clj:635)
at clojure.core$require.invokeStatic(core.clj:5775)
at clojure.core$require.doInvoke(core.clj)
at clojure.lang.RestFn.invoke(RestFn.java:457)
at vertigo.structs$loading__5337__auto____3313.invoke(structs.clj:1)
at clojure.lang.AFn.applyToHelper(AFn.java:152)
at clojure.lang.AFn.applyTo(AFn.java:144)
at clojure.lang.Compiler$InvokeExpr.eval(Compiler.java:3654)
at clojure.lang.Compiler.compile1(Compiler.java:7488)
at clojure.lang.Compiler.compile1(Compiler.java:7478)
at clojure.lang.Compiler.compile(Compiler.java:7555)
at clojure.lang.RT.compile(RT.java:406)
at clojure.lang.RT.load(RT.java:451)
at clojure.lang.RT.load(RT.java:419)
at clojure.core$load$fn__5445.invoke(core.clj:5871)
at clojure.core$load.invokeStatic(core.clj:5870)
at clojure.core$load_one.invokeStatic(core.clj:5671)
at clojure.core$load_one.invoke(core.clj)
at clojure.core$load_lib$fn__5394.invoke(core.clj:5716)
at clojure.core$load_lib.invokeStatic(core.clj:5715)
at clojure.core$load_lib.doInvoke(core.clj)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invokeStatic(core.clj:635)
at clojure.core$load_libs.invokeStatic(core.clj:5753)
at clojure.core$load_libs.doInvoke(core.clj)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invokeStatic(core.clj:635)
at clojure.core$require.invokeStatic(core.clj:5775)
at clojure.core$require.doInvoke(core.clj)
at clojure.lang.RestFn.invoke(RestFn.java:551)
at vertigo.core$loading__5337__auto____1375.invoke(core.clj:1)
at clojure.lang.AFn.applyToHelper(AFn.java:152)
at clojure.lang.AFn.applyTo(AFn.java:144)
at clojure.lang.Compiler$InvokeExpr.eval(Compiler.java:3654)
at clojure.lang.Compiler.compile1(Compiler.java:7488)
at clojure.lang.Compiler.compile1(Compiler.java:7478)
at clojure.lang.Compiler.compile(Compiler.java:7555)
at clojure.lang.RT.compile(RT.java:406)
at clojure.lang.RT.load(RT.java:451)
at clojure.lang.RT.load(RT.java:419)
at clojure.core$load$fn__5445.invoke(core.clj:5871)
at clojure.core$load.invokeStatic(core.clj:5870)
at clojure.core$load_one.invokeStatic(core.clj:5671)
at clojure.core$load_one.invoke(core.clj)
at clojure.core$load_lib$fn__5394.invoke(core.clj:5716)
at clojure.core$load_lib.invokeStatic(core.clj:5715)
at clojure.core$load_lib.doInvoke(core.clj)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invokeStatic(core.clj:635)
at clojure.core$load_libs.invokeStatic(core.clj:5757)
at clojure.core$load_libs.doInvoke(core.clj)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invokeStatic(core.clj:635)
at clojure.core$require.invokeStatic(core.clj:5775)
at clojure.core$require.doInvoke(core.clj)
at clojure.lang.RestFn.invoke(RestFn.java:436)
at uncomplicate.neanderthal.impl.buffer_block$loading__5337__auto____1373.invoke(buffer_block.clj:1)
at clojure.lang.AFn.applyToHelper(AFn.java:152)
at clojure.lang.AFn.applyTo(AFn.java:144)
at clojure.lang.Compiler$InvokeExpr.eval(Compiler.java:3654)
at clojure.lang.Compiler.compile1(Compiler.java:7488)
at clojure.lang.Compiler.compile1(Compiler.java:7478)
at clojure.lang.Compiler.compile(Compiler.java:7555)
at clojure.lang.RT.compile(RT.java:406)
at clojure.lang.RT.load(RT.java:451)
at clojure.lang.RT.load(RT.java:419)
at clojure.core$load$fn__5445.invoke(core.clj:5871)
at clojure.core$load.invokeStatic(core.clj:5870)
at clojure.core$load_one.invokeStatic(core.clj:5671)
at clojure.core$compile$fn__5450.invoke(core.clj:5881)
at clojure.core$compile.invokeStatic(core.clj:5881)
at clojure.core$compile.invoke(core.clj)
at user$eval1022$fn__1029.invoke(form-init6809606777108778687.clj:1)
at user$eval1022.invokeStatic(form-init6809606777108778687.clj:1)
at user$eval1022.invoke(form-init6809606777108778687.clj)
at clojure.lang.Compiler.eval(Compiler.java:6946)
at clojure.lang.Compiler.eval(Compiler.java:6936)
at clojure.lang.Compiler.load(Compiler.java:7393)
at clojure.lang.Compiler.loadFile(Compiler.java:7331)
at clojure.main$load_script.invokeStatic(main.clj:275)
at clojure.main$init_opt.invokeStatic(main.clj:277)
at clojure.main$init_opt.invoke(main.clj)
at clojure.main$initialize.invokeStatic(main.clj:308)
at clojure.main$null_opt.invokeStatic(main.clj:342)
at clojure.main$null_opt.invoke(main.clj)
at clojure.main$main.invokeStatic(main.clj:421)
at clojure.main$main.doInvoke(main.clj)
at clojure.lang.RestFn.invoke(RestFn.java:421)
at clojure.lang.Var.invoke(Var.java:383)
at clojure.lang.AFn.applyToHelper(AFn.java:156)
at clojure.lang.Var.applyTo(Var.java:700)
at clojure.main.main(main.java:37)
Caused by: java.lang.NoClassDefFoundError: IllegalName: compile__stub.vertigo.bytes.vertigo.bytes/ByteSeq
at java.lang.ClassLoader.preDefineClass(ClassLoader.java:654)
at java.lang.ClassLoader.defineClass(ClassLoader.java:758)
at java.lang.ClassLoader.defineClass(ClassLoader.java:642)
at clojure.lang.DynamicClassLoader.defineClass(DynamicClassLoader.java:46)
at clojure.lang.Compiler$NewInstanceExpr.compileStub(Compiler.java:7913)
at clojure.lang.Compiler$NewInstanceExpr.build(Compiler.java:7778)
at clojure.lang.Compiler$NewInstanceExpr$DeftypeParser.parse(Compiler.java:7688)
at clojure.lang.Compiler.analyzeSeq(Compiler.java:6887)

Alex Miller

unread,
Aug 5, 2015, 10:33:06 AM8/5/15
to Clojure
This is a latent bug (now exposed due to other changes in 1.8) in potemkin's deftype+ used by vertigo which was fixed here:

I'm not sure what is involved in upgrading your version of potemkin or vertigo to include the fix.
...

Dragan Djuric

unread,
Aug 5, 2015, 10:46:35 AM8/5/15
to Clojure
Adding potemkin and clj-tuple dependencies explicitly solves the problem until they upgrade vertigo. Thanks a lot for the tip!
Reply all
Reply to author
Forward
0 new messages