Show HN: Interactive Common Lisp: An Enhanced REPL
Posted by atgreen 3 days ago
I created this because sometimes I want more than rlwrap but less than emacs. icl aims to hit that middle sweet spot.
It's a terminal application with context-aware auto-complete, an interactive object inspector, auto-indentation, syntax colouring, persistent history, and much more. It uses sly to communicate with the child lisp process and aims to be compatible with any sly-supporting implementation. I hope others find it useful!
Comments
Comment by dcassett 22 hours ago
One thing I immediately miss (that rlwrap provides) are the keyboard functions such as reverse-search-history (usually mapped to C-r) and history-search-backward (have this mapped to M-p). History recall only seems possible with the up arrow.
Also, be in for some surprises if you try to paste some lisp code into the REPL, especially if there are long lines. The interaction is apparently meant for a human typing, not pasting.
Comment by atgreen 21 hours ago
Comment by vindarel 18 hours ago
- icl doesn't have an interactive debugger, you ask for the backtrace with ,bt. cl-repl has one (less feature complete than Slime). I actually like the lack of a debugger for newcomers.
- icl: does auto-indentation right
- cl-repl: has an %edit command to launch an editor and load the file content on close.
- icl: better, prettier autocompletion with a drop-down. cl-repl is based on readline.
- icl: based on Slime's backend, so you can connect to another running image.
- cl-repl: has a ! shortcut to execute a shell command.
- cl-repl might be faster to launch.
big thanks to atgreen for all the nice projects!
Comment by atgreen 18 hours ago
Comment by vjust 19 hours ago