Logic & Functional
Clojure Playground
Real Clojure / ClojureScript in the browser - immutable data, sequences, atoms.
Runtime: Scittle (browser ClojureScript)
First run downloads ~700 KB of Scittle; subsequent runs are instant.
About this playground
Clojure playground powered by Scittle - a lightweight ClojureScript interpreter (~700 KB) maintained by the babashka project. Run real Clojure: vectors, maps, sets, lazy seqs, transducers, atoms, multimethods, and the full core library. Output of (println ...) is captured into the panel below the editor; the last expression's return value is also shown.
FAQs
Is this Clojure or ClojureScript?
ClojureScript - Clojure compiled to JavaScript - via Scittle. Most clojure.core works identically; JVM-only features (agents, refs with STM, java.io) don't. cljs.core / clojure.string / clojure.set / clojure.walk are bundled.
Is it Scittle the same as the official ClojureScript compiler?
Scittle uses SCI (Small Clojure Interpreter) - an interpreter rather than a compiler. The semantics are essentially the same for typical code; speed is slower than compiled CLJS but plenty fast for playgrounds and snippets.
Can I require popular libraries?
Scittle bundles a small set (core, string, set, walk) and supports a plugin system for adding more (reagent, malli, etc.) at the cost of bigger downloads. We ship the default set.
Will it leave the browser?
No. Scittle loads from a CDN once; after that everything happens locally. No code is sent to a server.