clojure:equiv

Last commit made on 2010-06-25
Get this branch:
git clone -b equiv https://git.launchpad.net/clojure

Branch merges

Branch information

Name:
equiv
Repository:
lp:clojure

Recent commits

07f0586... by Rich Hickey <email address hidden>

incorporate BigInt

845c63e... by Rich Hickey <email address hidden>

box longs-and-smaller as longs

c8ce463... by Rich Hickey <email address hidden>

add hashCode/equals to BigInt, refine number =, new method equal checks for matching category before equivalence, move array and hashMap to equiv for keys

16fa2f1... by Chouser <email address hidden>

Initial version of BigInt -- note overflow caps/rolls over inconsistently

Signed-off-by: Rich Hickey <email address hidden>

df0e4b6... by Rich Hickey <email address hidden>

equiv-based =, equiv overloading for Util

0df995d... by Rich Hickey <email address hidden>

auto-box loop arg when primitive local recur mismatch, print warning that this is happening when *warn-on-reflection* is true

25165a9... by Rich Hickey <email address hidden>

restore hard error on primitive local recur mismatch

310534b... by Rich Hickey <email address hidden>

Swap defaults, now non-promoting +, * etc is default. Use +', *' etc for arbitrary precision.

7652f7e... by Rich Hickey <email address hidden>

print recur mismatch warnings, for now

c79d287... by Rich Hickey <email address hidden>

Allow ' as constituent character
Bigints auto-reduce in all cases
Restore +, *, -, inc, dec as auto-promoting ops, will never return primitive integers, will auto-promote even when given primitives.
Add +', *', -', inc', dec', that do exactly what their counterparts do except when given integers of long or smaller, in which case they will not auto-promote but instead throw on overflow, and can return primitives.
Return primitive doubles on all ops involving primitive doubles
Box on long ops only after checking for overflow