Error formatting macro: pagetree: java.lang.NullPointerException
Skip to end of metadata
Go to start of metadata
You are viewing an old version of this page. View the current version. Compare with Current  |   View Page History


The current ClojureScript REPL is tied heavily to the use of Java's embedded Rhino. We lack the set of abstractions and tools that would allow us to:

  • plug any JavaScript VM in as the "E" in our REPL, the advantages of which include:
    • faster development on alternate JSVMs
    • ease of comparing how the same ClojureScript evaluates on multiple JSVMs
      • the potential to evaluate the same code on multiple JSVMs simultaneously for compatibility testing
    • protocolization of the evaluation component's communication model, allowing for either in-process or remote evaluators
  • support multiple user interfaces: IDE, CLI; the "R" and "P"
    • via nrepl
    • via command line
    • ability of third parties to implement browser-based REPL without depending on compiler details (an inevitability?)