Now that var is implemented. Could we expect the support of private functions in cljs?
On Wednesday, 17 December 2014 23:54:09 UTC+2, David Nolen wrote: > ClojureScript, the Clojure compiler that emits JavaScript source code. > > README and source code: https://github.com/clojure/clojurescript > > New release version: 0.0-2496 > > Leiningen dependency information: > > [org.clojure/clojurescript "0.0-2496"] > > The big change in this release is a port of the clojure.test namespace > - cljs.test. > It is largely compatible with clojure.test and implements enough > functionality such > that we could port all of the existing tests to it. It's also featureful > enough > to support a ClojureScript port of test.check that is underway. > cljs.test is compatible > with all of the optimization settings provided by the compiler including > :none. > > Still cljs.test may not satisfy all the patterns that people have come to > expect > from clojure.test so feedback (and enhancement/fix patches) is very welcome. > > On the way we implemented changes to the compiler in order to make > custom testing > frameworks simpler to implement - this includes compiler support for > :test metadata as well > as introducing static vars. > > ClojureScript does not have vars, however there are var patterns that > are largely > static in nature and useful for metaprogramming and REPL interactions. Towards > this end we've implemented the `var` special form and introduced very > restricted > functionality - metadata is the primary use case. > > (defn foo []) > (meta #'foo) ;; will return the expected metadata > > cljs.test is implemented on top of this functionality as well as a new > namespace > cljs.analyzer.api which I think macro writers will find quite useful. > > Also there's a doc macro now in the cljs.repl namespace that works as > expected. > Patches welcome to bring all the useful bits of clojure.repl into cljs.repl. > > ## 0.0-2496 > > ### Enhancements > * cljs.test added, mirrors clojure.test > * New cljs.analyzer.api namespace for easier access to analysis info from > macros > * New cljs.analyzer.api namespace for easier access to analysis info from > macros > * Support :test metadata on vars > * Support static vars > * cljs.source-map for client side source mapping > * expose ClojureScript :warnings build option > * CLJS-909: Add stable api for consumers of compiler data. > > ### Changes > * convert all ClojureScript tests to cljs.test > * add volatile! from Clojure 1.7 > * stateful transducers use volatile! > * added `js-debugger` macro, compiles to "debugger;" > * CLJS-892: Improve performance of compare-symbols/compare-keywords > * CLJS-696: remove arguments usage from defrecord constructor > * unroll `partial`, copy & pasted from Clojure core.clj > * optimize clojure.string/join > > ### Fixes > * fix `cljs.nodejs/enable-util-print!`, incorrectly monkey patched > `cjls.core/string-print` instead of setting `cljs.core/*print-fn*` > * cljs.reader bug, '/ incorrectly read > * avoid emitting the same goog.require -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.