Problem: if you have a domain specific repl that reuses
clojure.main/repl, designed to be launched from within a clojure repl,
sharing *1 *2 *3 with the outer clojure repl is a pain
Proposal: add an :around keyword argument to clojure.main/repl, the
value would by a function responsible for setting up any bindings to
exist around the repl
Details:
a domain specific repl is would be something like replacing eval in
the current repl with something that does an sql query instead of
evaluating clojure code.
implementation of :around would be a single arg function (fn [repl]
(binding [*1 ...] (repl))) similar to a fixture from clojure.test or a
hook from robert.hooke.
--
And what is good, Phaedrus,
And what is not good—
Need we ask anyone to tell us these things?