Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Can you easily compile a binary?

(I assume you just use standard CL methods?)

> [CIEL custom REPL ] has a shell pass-through: try !ls (available in the ciel-user package)

That's a kickass feature.



It is very handy.

Users who want an advanced lisp shell for the terminal, where they can mix & match shell and lisp code, would turn to lish: https://github.com/nibbula/lish/ (not considered "ready" or "good enough" by the author, but well advanced).

also https://github.com/bradleyjensen/shcl, a POSIX shell.

As always: see more on https://github.com/CodyReichert/awesome-cl#shells-shells-int...


> Can you easily compile a binary? (I assume you just use standard CL methods?)

ATM you use standard methods, by using CIEL as a library.

I'd like to add a `ciel build` command.


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.


You 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)


> 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.


What's wrong with Ctrl+Z?


You cannot use lisp expressions and functions as arguments in bash.


so it wouldn't require a shell that supports job control?


That's a pretty low bar. What's the Venn diagram of (systems which can run this) & (systems with only terrible shells)?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: