Permalink
Commits on May 4, 2012
  1. * src/clj/cljs/core.clj: optimize satisfies?

    David Nolen David Nolen
    David Nolen authored and David Nolen committed May 4, 2012
  2. CLJS-235: WIP on David Nolen's protocol mask idea

    michalmarczyk authored and David Nolen committed May 3, 2012
  3. * src/clj/cljs/compiler.clj: improve bool inference

    David Nolen David Nolen
    David Nolen authored and David Nolen committed May 4, 2012
  4. * src/cljs/cljs/core.cljs: add missing type hint on type_satisfies_

    David Nolen David Nolen
    David Nolen authored and David Nolen committed May 4, 2012
  5. CLJS-225: fix warning about undeclared Var in cljs.reader

    michalmarczyk authored and David Nolen committed May 2, 2012
    The reason was a typo in read-keyword; the resulting function worked
    because cljs.core/keyword's binary variant currently delegates to the
    unary variant anyway.
Commits on May 3, 2012
  1. * src/clj/cljs/compiler.clj: CLJS-237: communicate *ns* to macros

    David Nolen David Nolen
    David Nolen authored and David Nolen committed May 3, 2012
  2. * src/cljs/cljs/core.cljs: use identical? not = for char equality tests

    David Nolen David Nolen
    David Nolen authored and David Nolen committed May 3, 2012
  3. * src/clj/cljs/core.clj: remove hasOwnProperty test from satisfies? R…

    David Nolen David Nolen
    David Nolen authored and David Nolen committed May 3, 2012
    …elated changes so CLJS ctors are still printable.
  4. * src/clj/cljs/core.clj: eliminate truth tests from satifies?

    David Nolen David Nolen
    David Nolen authored and David Nolen committed May 3, 2012
  5. * src/clj/cljs/compiler.clj: preserve :tag on dot forms

    David Nolen David Nolen
    David Nolen authored and David Nolen committed May 3, 2012
  6. * src/clj/cljs/core.clj: add coercive-not

    David Nolen David Nolen
    David Nolen authored and David Nolen committed May 3, 2012
  7. * src/clj/cljs/core.clj: nil? needs to use coercive-not=, we need to …

    David Nolen David Nolen
    David Nolen authored and David Nolen committed May 3, 2012
    …handle undefined
Commits on May 2, 2012
  1. * src/cljs/cljs/core.cljs: use zero? & == for numeric tests

    David Nolen David Nolen
    David Nolen authored and David Nolen committed May 2, 2012
  2. Prevent reify from causing undeclared Var warnings

    michalmarczyk authored and David Nolen committed May 2, 2012
  3. * devnotes/corelib.org: rsubseq done

    David Nolen David Nolen
    David Nolen authored and David Nolen committed May 2, 2012
  4. Add cljs.core/rsubseq

    michalmarczyk authored and David Nolen committed May 2, 2012
    Copy & paste from Clojure's core.clj, with minor adjustments.
  5. Supply missing arguments to some fn calls in TwitterBuzz

    michalmarczyk authored and David Nolen committed May 2, 2012
  6. Add ^boolean hint to reduced?

    michalmarczyk authored and David Nolen committed May 2, 2012
  7. Fix count for non-counted collections, remove ICounted from Cons

    michalmarczyk authored and David Nolen committed May 2, 2012
    Since default no longer gets extended to ICounted, the original
    implementation of cljs.core/count no longer works on LazySeq
    instances.
    
    This patch takes the approach of checking whether the given collection
    is counted and either calling -count or a linear traversal
    helper (which rolls over to -count as soon as possible).
    
    The implementation of ICounted on Cons is now unnecessary and has been
    removed, so that things for which counted? returns true really do
    provide constant-time count.
Commits on May 1, 2012
  1. clojure.core.reduce copied over from Clojure

    michalmarczyk authored and David Nolen committed May 1, 2012
    Copy and paste with protocol & protocol method names adjusted,
    Exception changed to Error and (set! *warn-on-reflection* true)
    removed.
  2. Support terminating reduce

    michalmarczyk authored and David Nolen committed May 1, 2012
  3. Fix bug in TransientVector impl

    michalmarczyk authored and David Nolen committed May 1, 2012
  4. Allow for docstrings in ns forms (just discard for now)

    michalmarczyk authored and David Nolen committed May 1, 2012
  5. * src/cljs/clojure/browser/dom.cljs: Vector -> PersistentVector

    David Nolen David Nolen
    David Nolen authored and David Nolen committed May 1, 2012
  6. * src/cljs/cljs/core.cljs: remove remaining extend-type default cases…

    David Nolen David Nolen
    David Nolen authored and David Nolen committed May 1, 2012
    …, nth, reduce, count now handle internally. add indexed? reduceable?. fix bounded-count. fix apply.
  7. * src/cljs/cljs/core.cljs: Cons is not ICounted

    David Nolen David Nolen
    David Nolen authored and David Nolen committed May 1, 2012
  8. * src/cljs/cljs/core.cljs: fix ci-reduce for IndexedSeq

    David Nolen David Nolen
    David Nolen authored and David Nolen committed May 1, 2012
  9. * src/cljs/cljs/core.cljs: declared counted? fix IndexedSeq -reduce

    David Nolen David Nolen
    David Nolen authored and David Nolen committed May 1, 2012
  10. * src/clj/cljs/compiler.clj: fix emitting bad code in rest fn case w/…

    David Nolen David Nolen
    David Nolen authored and David Nolen committed May 1, 2012
    … only rest param
  11. Merge branch 'master' into optimize-variadic

    David Nolen David Nolen
    David Nolen authored and David Nolen committed May 1, 2012
  12. IKVReduce -- ported from Clojure's KVReduce

    michalmarczyk authored and David Nolen committed May 1, 2012
    Including support for terminating reduce (only inside reduce-kv for
    now).
  13. Merge branch 'master' into optimize-variadic

    David Nolen David Nolen
    David Nolen authored and David Nolen committed May 1, 2012
  14. Re-precate ObjMap

    michalmarczyk authored and David Nolen committed Apr 21, 2012
    The compiler will now emit code to construct ObjMaps for maps with
    simple keys and up to cljs.compiler/obj-map-threshold entries. -assoc
    onto ObjMap causes conversion to PersistentHashMap after
    cljs.core.ObjMap/HASHTABLE_THRESHOLD updates (instances of ObjMap keep
    their own counts initialized to 0 by cljs.core.ObjMap/fromObject and
    incremented at each assoc / dissoc).
    
    Map literals with complex keys and up to
    cljs.compiler/array-map-threshold entries now produce
    PersistentArrayMaps.
    
    ObjMap now implements the IEditableCollection protocol, however calls
    to transient on ObjMaps return TransientHashMap.
    
    This commit also removes the deprecation notice previously attached to
    ObjMap.
  15. * devnotes/corelib.org: array-map done

    David Nolen David Nolen
    David Nolen authored and David Nolen committed May 1, 2012
  16. PersistentArrayMap ported from Clojure

    michalmarczyk authored and David Nolen committed Apr 26, 2012
    TransientArrayMap is the transient equivalent. Conversion to
    PersistentHashMap occurs when growing beyond
    cljs.core.PersistentArrayMap/HASHTABLE_THRESHOLD entries.
    
    Also introduces cljs.core/array-map, which is guaranteed to produce a
    PersistentArrayMap regardless of size.