Permalink
Commits on Jun 15, 2012
  1. @raph-amiard

    Decouple analyzer from compiler

    The analyzer is now living in it's own file, with all related
    functions. The rest of the compiler has been updated so that
    references to the analyze part of the compiler now references
    the analyzer namespace.
    raph-amiard committed with David Nolen Jun 15, 2012
  2. @raph-amiard

    Use load instead of require to load core cljs macros

    Loading now happens dynamically and once when the
    analyzer is first ran.
    Also provides macros to facilitate overriding of the
    default path provided (defaults to cljs/core).
    raph-amiard committed with David Nolen Jun 15, 2012
Commits on Jun 14, 2012
  1. * src/clj/cljs/compiler.clj: CLJS-315: resolve-var and resolve-existi…

    …ng-var should never emit :name as string
    David Nolen committed Jun 14, 2012
  2. @fogus
  3. @fogus
Commits on Jun 13, 2012
  1. @raph-amiard

    Using empty-env function in rhino repl too

    raph-amiard committed with David Nolen Jun 13, 2012
  2. @raph-amiard

    Encapsulating namespace access and env creation

    raph-amiard committed with David Nolen Jun 13, 2012
  3. @fogus
  4. @fogus

    Cleaner binding

    fogus committed Jun 13, 2012
  5. @michalmarczyk

    CLJS-272: support :refer and skipping :as in :require

    The :as alias part of a :require spec can now be omitted.
    Alternatively, a symbol naming the namespace to be required without an
    alias can be specified without wrapping it in a vector.
    
    Additionally, :require accepts a :refer option with :use-like effect.
    
    (ns foo.core
      (:require
        ;; bar-fn will be available unqualified
        [lib.bar :as bar :refer [bar-fn]]
        ;; :as lib.baz is implicit
        [lib.baz]
        ;; likewise
        lib.quux))
    
    Either, both or none of :as, :refer may be specified in each :require
    spec.
    
    :require-macros supports the same options.
    
    :use / :use-macros is now supported by rewriting the specs as :require
    / :require-macros specs with :refer.
    
    :require / :require-macros now produce problem-specific error
    messages which include the offending spec.
    
    Tests are provided for :refer and the new handling of :use.
    michalmarczyk committed with David Nolen Jun 12, 2012
Commits on Jun 11, 2012
  1. @Bronsa

    fix rename-to-js regex

    Bronsa committed with David Nolen Jun 11, 2012
  2. @raph-amiard

    Use specific path-munging function for ns resolution

    raph-amiard committed with David Nolen Jun 8, 2012
Commits on Jun 8, 2012
  1. Merge branch 'cljs-305-proto-inline'

    David Nolen committed Jun 8, 2012
  2. Merge branch 'fix-resolve-var' into cljs-305-proto-inline

    Conflicts:
    	src/clj/cljs/core.clj
    
    * src/clj/cljs/core.clj: merge
    David Nolen committed Jun 8, 2012
  3. * src/clj/cljs/core.clj: we have property access, use it. less string…

    … manipulation in deftype.
    David Nolen committed Jun 8, 2012
  4. * src/clj/cljs/core.clj: fix fast path protocols

    David Nolen committed Jun 8, 2012
  5. * src/clj/cljs/compiler.clj: resolve-var now consistently returns a p…

    …roperly namespaced symbol
    David Nolen committed Jun 8, 2012
  6. @brentonashworth
  7. @brentonashworth

    CLJS-129: Fix browser-connected REPL namespace loading

    The browser-connected REPL keeps track of all of the namespaces it has
    loaded and will only load them once. Some namespaces will have already
    been loaded when the host page was loaded in the browser. This fixes
    how we attempt to determine what has already been loaded. Instead of
    asking the browser what has been loaded, which is not reliable, we
    allow namespaces to be loaded a second time. If loading a namespace a
    second time will cause problems, the namespace can be passed to
    repl-env to be ignored. See doc string for cljs.repl.browser/repl-env.
    brentonashworth committed Jun 8, 2012
  8. @brentonashworth
  9. * src/clj/cljs/compiler.clj: comments about the various protocol keys…

    …. add :protocol-impl :protocol-inline to the analysis environment when analyzing fn methods
    David Nolen committed Jun 8, 2012
  10. * src/clj/cljs/compiler.clj: propagate :protocol-impl

    David Nolen committed Jun 8, 2012
  11. * src/clj/cljs/compiler.clj: mark defrecord and deftype as :type true…

    … in namespaces atom
    David Nolen committed Jun 8, 2012
  12. * src/clj/cljs/core.clj: type-hint first arg of all extend-type imple…

    …mentation fns
    David Nolen committed Jun 8, 2012
  13. * src/clj/cljs/core.clj: pass information about inline protocol fns a…

    …long
    David Nolen committed Jun 8, 2012
Commits on Jun 7, 2012
  1. * src/clj/cljs/core.clj: tsym -> this-sym, tsym already referred to t…

    …he type sym
    David Nolen committed Jun 7, 2012
  2. * src/clj/cljs/compiler.clj: put deftype and defprotocol :protocols m…

    …eta into namespaces
    David Nolen committed Jun 7, 2012
  3. * src/clj/cljs/core.clj: collect protocols and add to deftype and def…

    …record name symbol metadata
    David Nolen committed Jun 7, 2012
  4. * src/clj/cljs/core.clj: break out shared code, dt->et from deftype /…

    … defrecord
    David Nolen committed Jun 7, 2012