Skip to content

Instantly share code, notes, and snippets.

@mfikes
Last active December 29, 2015 10:47
Show Gist options
  • Star 7 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mfikes/0aae4cf66fb193f96694 to your computer and use it in GitHub Desktop.
Save mfikes/0aae4cf66fb193f96694 to your computer and use it in GitHub Desktop.
State of ClojureScript

If you look at the 2014 State of ClojureScript survey, these are the top items for What has been most frustrating for you in your use of CLJS?, and my take on work done in these areas is below. It is nothing short of amazing, IMHO.

Therefore I urge you to do the current survey.

  1. Difficulty using ClojureScript REPL: The Node.js REPL was added, as well as a Nashorn REPL, as well as a lot of new "ease-of-use" stuff baked into all base REPLs (doc, pst, etc.). Additionally, a few new ClojureScript REPLs (Ambly, Replete, Planck) rely heavily on new stuff in ClojureScript.
  2. Difficulty debugging generated JavaScript: Source map capability was essentially extended to all REPLs with stack traces automatically being mapped. The ability was added to debug directly in Node.
  3. Availability of comprehensive / approachable documentation, tutorials, etc: Quick Start, Dependencies, Compiler Options, REPL Options. (A lot of useful, solid documentation that wasn't there before.)
  4. Difficulty using JavaScript libraries with ClojureScript / Google Closure: GSoC project added support for CommonJS, AMD, transforms like JSX, etc. and work towards auto-externs generation.
  5. Availability of comprehensive / approachable editors / development environments: I know that Cursive has greatly expanded its support for ClojureScript, including even adding the ability to run a cloure.main REPL, which is useful.
  6. Incompatibilities with Clojure / difficulty maintaining Clojure-portable codebases: One word: CLJC
  7. The ClojureScript compiler's dependency upon Clojure / the JVM: ClojureScript now bootstraps.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment