unrepl 2017-07-02

https://vimeo.com/223309989 this seems pretty relevant to this channel

Maybe the unrepl socket accept function can be shared between clj socket repl and Lumo socket repl? This is actually what I woult try first: unlumo

the thing is that for the unrepl socket accept function to be there the user starting the clj/cljs process needs to add unrepl as a dependency. this is asking for trouble.

@domincm, watching it right now... philosophically very close to unrepl

@pesterhazy Much crossover. Lots of interesting points. I didn't realise that a plain ol' clojure.main/repl could be used for breakpoints, I'd always used https://github.com/gfredericks/debug-repl

Inspires me to try simplify my toolset.

stu even endorses our 2nd tooling connection idea

yep. Which I thought was very interesting.

Starting to feel like 2018 might be a year of re-tooling

For 2018 to be the year of re-tooling, there should be a new build tool.

I glanced at Mach once. I haven't looked in detail but I like the general approach.

one thing I disagree with "don't type stuff into a shell"

using a terminal repl - with readline history & lispy goodies like paren matching - is low-tech (simple!) yet powerful for exploration

plus my readline history is essentially infinite, so I can still readily access all my silly experiments from a year ago

I mean, the terminal needs syntax highlighting & paredit for modifying statements, right?

Is there a way to add paredit to readline? That is why I am keen on inf-clojure. It is the simplest editor to shell facade

yes, paredit-like commands in readline would be fantastic

btw lumo uses parts of Paredit.js now: https://github.com/anmonteiro/lumo/issues/193

it think from there to slurp and barf there is not much distance

and I can then drop emacs 😄

well maybe no

that's for sure good branding 😄

Backronym for unrepl: use (the) nice repl!

😂 1
🙃 1

anmonteiro: It might indirectly help people start an unrepl-compatible socket repl (one that speaks unrepl from the start), but it won't help with the main use case of upgrading a vanilla repl. One of the ideas behind unrepl is that you don't have to do anything special on the user side, just hand us any plain repl and we'll upgrade it as needed. For that unrepl needs to be able to install its own reader for handling *in*

starting with that commit, you can now specify a custom accept function that the Lumo socket REPL will run when accepting new connections

a la clojure.core.server