added test->, test->>, let->, when->, when->>
[maven-release-plugin] prepare release clojure-1.5.0-alpha7
[maven-release-plugin] prepare for next development iteration
Don't AOT-compile clojure.core.reducers.

AOT-compilation fixes the ForkJoin classes either to the jsr166y or the JDK7
ones, thus creating a version dependency between java version used to compile
clojure and java version used at runtime while using reducers.

Fixes CLJ-1066.

Signed-off-by: Stuart Halloway <stu@thinkrelevance.com>
CLJ-960: tests for :line and :column metadata as provided by LineNumberingPushbackReader

Signed-off-by: Stuart Halloway <stu@thinkrelevance.com>
avoid double evaluation in when-first

Signed-off-by: Stuart Halloway <stu@thinkrelevance.com>
CLJ-1085: only implicitly refer REPL utility vars into *ns* when starting REPL from clojure.main

Signed-off-by: Stuart Halloway <stu@thinkrelevance.com>
Make PersistentVector$ChunkedSeq implement Counted.

Fixes CLJ-1084.

Signed-off-by: Stuart Halloway <stu@thinkrelevance.com>
CLJ-1084 tests, update to latest test.generative

Signed-off-by: Stuart Halloway <stu@thinkrelevance.com>
CLJ-1052: assoc should throw exception if missing val for last key

Signed-off-by: Stuart Halloway <stu@thinkrelevance.com>
support annotations for constructors generated via gen-class

Signed-off-by: Stuart Halloway <stu@thinkrelevance.com>
CLJ-1024: Check for invalid varags/destrucuring uses.

Protocol, interface method declarations don't allow for varags and
destructuring support.  Currently, for example

  (defprotocol FooBar
    (foo [this & more]))

compiles just fine, and & is interpreted as a usual argument that happens to be
named & without special meaning.  But clearly, the user wanted to specify a
varags parameter here.  The same applies to definterface.

Similarly, providing method implementations via defrecord, deftype, and reify
don't allow for varags (but dynamic extenions via extend do).

So this patch makes defprotocol and definterface throw an
IllegalArgumentException if a user tries to use varargs and destructuring in
method signatures.

Similarly, defrecord, deftype, and reify throw an IllegalArgumentException if
any method implementation arglist contains a varargs argument.

Signed-off-by: Stuart Halloway <stu@thinkrelevance.com>
CLJ-1070 make PersistentQueue's hash & equiv match

Signed-off-by: Stuart Halloway <stu@thinkrelevance.com>
Add docstring and :added metadata to definterface.

Signed-off-by: Stuart Halloway <stu@thinkrelevance.com>
*default-data-reader-fn* for handling unknown tags

Signed-off-by: Stuart Halloway <stu@thinkrelevance.com>
[maven-release-plugin] prepare release clojure-1.5.0-beta1
[maven-release-plugin] prepare for next development iteration
pprint now flushes the underlying stream similarly to prn. pprint was using .flush as a method to push and reset its own internal data, but not to flush the underlying stream. The current .flush functionality has been moved into a .ppflush method, and .flush now additionally flushes the underlying stream.

Signed-off-by: Stuart Sierra <mail@stuartsierra.com>
renames: cond->, as->, some->
cache hasheq() for seqs, sets, vectors, maps and queues

Signed-off-by: Rich Hickey <richhickey@gmail.com>