Please sign in to comment.
PersistentHashMap ported from Clojure
In addition to the PHM implementation, this commit introduces two new bit ops, bit-shift-right-zero-fill (with accompanying compiler macro) and bit-count. An internal general purpose coercive-= compiler macro and two special purpose internal compiler macros mask and bitpos are also introduced. INode operations are implemented directly on the node objects (via Object in deftype). cljs.core/hash-map and compiler's emit :map now use PersistentHashMap, so maps and sets are now persistent by default. ObjMap and HashMap are now marked deprecated.
- Loading branch information...
Showing with 479 additions and 13 deletions.
Oops, something went wrong.