DEV Community

vindarel
vindarel

Posted on • Updated on

2023 starts well for Common Lisp: new Jetbrains Lisp plugin

I had just published my review of 2022 for Common Lisp (HN, 73 comments) when awesome new projects popped-up. One of them should have never been released because it has the potential to make Common Lisp popular (did we try to "avoid success at all costs" so far ?).

SLT is a new Jetbrains IDE for Common Lisp and it has a good user manual.

The SLT Common Lisp plugin for the Jebrains suite

It is very capable:

  • it helps you to install a Lisp implementation
  • it does the basics: syntax highlighting, automatic indentation, documentation lookup, show the function's arguments, go to definition (source of a symbol)…
  • it connects to a Lisp REPL: you can evaluate an expression at point, eval the whole file, the selected region. It can also eval the next s-expression, at the right of the cursor. I never used this in Emacs and Slime.
  • and, it is good because it provides the Lisp interactive debugger, with advanced features:
    • a stacktrace you can inspect, for example to see the local variables and their values in that frame,
    • "restarts", actions you can click on to do something with the current error, such as "retry", "exit", or custom ones that library developers can provide,
    • and you can eval some code inside the context of those frames,
    • you can set breakpoints to enter the debugger,
  • it has a UI window to show the Lisp image's threads, and buttons to act on them (stop/kill).
  • and more, and probably more soon as it is actively developed.

So, good work.

I mean, of course Jetbrains IDEs are so heavy compared to Emacs, but it's good SLT exists ;)

Addendum: What does SLT even mean?

SLT - Speech Language Therapy. Only cure for LISP!

Also, backronym for Superior Lisp Tooling!

Lol, and good work.

For more IDEs plugins for Atom/Pulsar, VSCode, Sublime, Vim, Jupyter notebooks and more, see: https://lispcookbook.github.io/cl-cookbook/editor-support.html

Top comments (0)