-
Notifications
You must be signed in to change notification settings - Fork 788
Bootstrapping the Compiler
See https://github.com/swannodette/cljs-bootstrap
Current status:
-
ClojureScript can now compile both its analyzer & compiler w/o errors. Can eval non-trivial ClojureScript exprs from within the JS host.
-
Performance reading, analysis & compilation within bootstrapped ClojureScript has been optimized to be roughly within a factor of 2 of ClojureScript JVM (varying perf between engines).
-
Master is successfully being used in various contexts:
The following enumerates the remaining tasks:
- Ensure perf is good.
- Ensure defects are addressed. Many have
bootstrap
label: JIRA Query - Determine if shared bootstrap REPL code will be included and implement.
* you can use the CLJS API reference to help identify imported macros and related Clojure types
As a point of reference, https://github.com/kanaka/clojurescript is a previous project to bootstrap the ClojureScript compiler. It is fairly dated since it was forked from the main tree on Nov 16th, 2012, however, it was self-hosting and allowed for a fully browser-based REPL: http://clojurescript.net/ A presentation of the project from Clojure West 2013 is here: http://www.infoq.com/presentations/cljs-in-cljs
- Rationale
- Quick Start
- Differences from Clojure
- [Usage of Google Closure](Google Closure)