4 ms·
Forgive me if I'm wrong but I thought that was a fairly standard thing? The Ipython kernel uses exactly the same format, or you can go for a full shell and use
by zipy124 2y ago
Forgive me if I'm wrong but I thought that was a fairly standard thing? The Ipython kernel uses exactly the same format, or you can go for a full shell and use xonsh.
Or is python the odd one out in its REPL implementations here? I'm only familiar with python and e-lisp for REPL's.
- qup 2y ago> CIEL's REPL is more user friendly than the default SBCL one. In particular: > ... > * it has a shell pass-through: try !ls (available in the ciel-user package) It was specifically mentioned as a reason why CIEL is better. But I don't use enough languages to know overall, sorry.
- vindarel 2y agoYou are right but let's put things in order: CL's REPL is outstandingly more interactive than Python's. Specially with Emacs & Slime (or the others coming close: Pulsar with SLIMA, vim, VSCode, Intellij, Sublime…) We have an interactive debugger, restarts, we can resume a failed computation from anywhere in the stack, we don't loose state, the Lisp program actually never restarts, we compile a function against a live image and get immediate feedback… (it's an internal and difficult explanation on forums) However, neither the built-in SBCL terminal REPL nor Slime offer a shell pass-through or ipython-like commands. We add one (by using the Clesh library). The doc doesn't mention it yet, we can enable the shell passthrough in Slime's REPL (or any other editor): CIEL-USER> (enable-shell-passthrough)