Clear ThreadLocals when no longer needed [CLJ-1125]

Clears transaction and dynamic binding thread locals to prevent memory
leaks when used inside a container. Uses a sentinel frame to prevent
the binding conveyance issues described in CLJ-1299.

Signed-off-by: Stuart Halloway <stu@cognitect.com>
CLJ-713 - upgrade ASM to 4.1.

Signed-off-by: Stuart Halloway <stu@cognitect.com>
Add record? via IRecord

Signed-off-by: Stuart Halloway <stu@cognitect.com>
CLJ-1190 - move clojure.api.API to clojure.java.api.Clojure. add javadoc for clojure.lang, clojure.lang.IFn, clojure.java.api.Clojure. add ant target to generate javadoc for the API.

Signed-off-by: Stuart Halloway <stu@cognitect.com>
CLJ-1082 - add generic ranged iterator for use by SubVectors and a fallback for cases where it cannot be applied

Signed-off-by: Stuart Halloway <stu@cognitect.com>
use hashcode in macrology of case, to match runtime
hasheq using Murmur3 throughout
make hasheq for java.math.BigIntegers conform with longs when in long range
murmur only at return for ordered colls, sum only op for unordered, expose coll fixhash a la carte. Note map basis is different from Java due to being sum of hashes of map entries, which in turn follow vector
Change clojure.string/trim so it uses same defn of whitespace as other trim fns

Signed-off-by: Stuart Halloway <stu@cognitect.com>
CLJ-983 - always update-proxy in proxy-super, regardless of whether call throws

Signed-off-by: Stuart Halloway <stu@cognitect.com>
CLJ-1176 - source throws error when *read-eval* is :unknown

Signed-off-by: Stuart Halloway <stu@cognitect.com>
Improves RestFn and ArraySeq perf

Eliminates a call to java.lang.Class.getComponentType, since the
result will always Object.class and that makes downstream uses nops.

Signed-off-by: Stuart Halloway <stu@cognitect.com>
CLJ-1200: Remove all vestiges of primitive array support from ArraySeq and oa field. Also add the inexplicably missing ArraySeq_short short[] variant.

Signed-off-by: Stuart Halloway <stu@cognitect.com>
CLJ-1318 - add support for destructuring namespaced keys

Signed-off-by: Stuart Halloway <stu@cognitect.com>
CLJ-1304: Fix minor doc/comment typos at some places.

Signed-off-by: Stuart Halloway <stu@cognitect.com>
CLJ-1282: Throw exception for bad quote arity

Decided to throw on (quote) as well, which previously returned nil.