unrepl

discussing specification of an edn-based repl and its implementations.
bozhidar 2017-09-12T09:50:49.000169Z

The practical issue is that repackaging cider-nrepl into a combination of utility library, that would be useful for something like unrepl and the built-in socket repl, plus the existing middleware is some work, that no one really wants to do. 🙂 From a technical standpoint there’s absolutely nothing hard, but someone was to implement this and also a new Elisp client library for unrepl and the necessary abstraction layer in CIDER to make it compatible with different REPL backends. All is easy, but all requires a relatively big amount of work to make it a reality.

cgrand 2017-09-12T09:56:47.000354Z

The built-in socket repl is not supported yet, right?

cgrand 2017-09-12T10:03:54.000305Z

A slightly different point of view is to use unrepl as the abstracting layer: • a socket repl can be upgraded to unrepl over the wire (CLJ only, CLJS planned) • out of a nrepl connection one can recreate a “pair of streams” repl (demo code in clj, you would need a bridge in elisp), once this is done, this repl can be upgraded to unrepl

cgrand 2017-09-12T10:06:01.000250Z

And don’t forget that unrepl doesn’t require additional dependencies on the target

cgrand 2017-09-12T10:20:15.000156Z

so even if all you have is a serial line to the repl you can enjoy the “full unrepl experience”™

dominicm 2017-09-12T21:24:19.000262Z

I like the idea of unrepl over something dumb like serial or telegraph pole.

dominicm 2017-09-12T21:24:50.000255Z

I'd quite happily use it as a http alternative for internal applications

cgrand 2017-09-12T21:43:36.000140Z

Or barbed wired https://en.m.wikipedia.org/wiki/Barbed_wire_telephone_lines?wprov=sfti1