planck-repl/planck
planck-repl/planck has 1,038 GitHub stars and 65 forks. GitHot measured 0 stars in 24 hours. Last checked 2026-11-09 11:48 UTC. Last push 2024-08-28.
Stand-alone ClojureScript REPL
Measured star growth
- in 24h
- 0
- in 7 days
- Collecting history
- in 15 days
- Collecting history
- in 1 month
- Collecting history
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
OriginalPlanck
A stand-alone ClojureScript REPL for macOS and Linux based on JavaScriptCore.
Home page: planck-repl.org
Installing
On macOS:
brew install planck
On Ubuntu:
sudo add-apt-repository ppa:mfikes/planck
sudo apt-get update
sudo apt-get install planck
For other Linux distros, download a binary or see Building below.
Using
Launch Planck by entering planck or plk at the terminal.
The
plkscript executesplanck, while integrating with theclojureCLI tool to add support fordeps.ednand classpath-affecting options such as-Aalias.
Get help on command-line options by issuing planck -h or plk -h.
Ported Clojure Functionality
It is possible to write Clojure-idiomatic scripts like the following:
(require '[planck.core :refer [line-seq with-open]]
'[planck.io :as io]
'[planck.shell :as shell])
(with-open [rdr (io/reader "input.txt")]
(doseq [line (line-seq rdr)]
(println (count line))))
(shell/sh "say" "done")
Many of the familiar functions and macros unique to Clojure have been ported:
clojure.core/ -> planck.core/
file-seq, find-var, load-reader, load-string, line-seq, intern, ns-aliases, ns-refers, ns-resolve, read, read-line, read-string, resolve, slurp, spit, with-in-str, with-open
clojure.java.io/ -> planck.io/
as-file, as-relative-path, as-url, delete-file, file, input-stream, make-input-stream, make-output-stream, make-parents, make-reader, make-writer, output-stream, reader, resource, writer
clojure.java.shell/ -> planck.shell/
Building
If using macOS or Ubuntu, you can install pre-built binaries as described above under "Installing". The instructions here can be used to build, test, and optionally install Planck on your machine.
Prerequisites
See Building Wiki for setting up OS-specific build tooling and dependencies.
Pre-made build environments for various environments are available in build-envs.
Compiling
script/build
The resulting binary will be planck-c/build/planck.
Specify --fast to quickly build a development version that skips Closure optimization:
script/build --fast
If you specify -Sdeps or -R<alias>, it will be passed through to the underlying clojure command during the build process. This can be used to specify a ClojureScript dep to use.
Tests
script/test
Installing
The following will install Planck under the prefix /usr/local:
sudo script/install
If you'd like to install Planck under a different prefix, you may pass -p. For example:
sudo script/install -p /usr
License
Planck™ copyright © 2015–2024 Mike Fikes and Contributors
Distributed under the Eclipse Public License either version 1.0 or (at your option) any later version.
Explore related projects
codecrafters-io/build-your-own-x
Master programming by recreating your favorite technologies from scratch.
561,343 starspublic-apis/public-apis
A collective list of free APIs
497,588 starsmorluto/rea
Reverse engineer anything with agents, from app behavior down to native binaries.
446,687 starsopenclaw/openclaw
The AI that really does things. Any OS. Any Platform. The lobster way. 🦞
394,252 stars