Title
#thinking-together
Tony Worm

Tony Worm

08/26/2022, 2:35 AM
Ask FoC: What are your favorite Lisps? Which ones are good for typical engineering work vs which are good for thinking and creativity?
p

Personal Dynamic Media

08/26/2022, 3:13 AM
So hard to pick! Logo, Scheme, elisp, Lisp 1.5, MAClisp, RPL. I've had so much fun and learned so much over the years from all of them!
yeT

yeT

08/26/2022, 3:30 AM
Racket is always my go to
Tony Worm

Tony Worm

08/26/2022, 4:45 AM
Which ones are usable from any editor? iirc, some of those have a much better experience from their custom IDE, but I have a hard time giving up my vim bindings
p

Personal Dynamic Media

08/26/2022, 4:48 AM
Elisp is emacs only. Lisp 1.5 and MAClisp I played with in emulators. RPL is on HP calculators. So Scheme and Logo are the ones you can use in any editor.
Konrad Hinsen

Konrad Hinsen

08/26/2022, 7:20 AM
I have three favorites: Common Lisp, Racket, and Clojure. Common Lisp is standardized, with several implementations optimized for different scenarios. You can even run it interactively on Android. Some implementations provide a decent live programming experience, in combination with a suitable IDE (Emacs + Sly for me). Racket and Clojure are where innovation in the Lisp universe happens. And yet, both have solid and very usable implementations. Racket is the platform to choose for experimenting with language design (inclusing DSLs), and for access to pretty much all ideas in CS in the form of a huge standard library. Clojure (and ClojureScript) let you use Lisp in contexts where other languages (Java/JavaScript) are dominant players you have to arrange yourself with.
Tony Worm

Tony Worm

08/26/2022, 8:52 AM
Thanks for the detailed overviews @Konrad Hinsen
Justin Deal

Justin Deal

08/26/2022, 7:21 PM
I feel like with
LAMBDA
, spreadsheet formulas are pretty much a Lisp? Which would make them my favorite simply because they also happen to be the most inclusive. Add in Coda’s chaining sugar, and that would be pretty much a, uh, sweet spot, IMO, of language expressiveness and readability/writability.
w

wtaysom

08/27/2022, 11:16 AM
The best Lisp is always your own! Common Lisp’s
setf
feels overly elaborate. Scheme is so cleverly non-dynamic and has some weird cons immutability rules. I guess my dislike of a Lisp is proportional to how well I know it!
Konrad Hinsen

Konrad Hinsen

08/27/2022, 11:51 AM
@wtaysom Well, then... the best Lisp, the one you make yourself, is also the one you know best and the one you dislike most.
w

wtaysom

08/27/2022, 12:08 PM
Checkmate! 😂
Tony Worm

Tony Worm

08/28/2022, 7:16 PM
Something with a solid stdlib or ecosystem would be nice. I'd like to be production IRL without needing to rewrite the world
Konrad Hinsen

Konrad Hinsen

08/29/2022, 9:55 AM
@Tony Worm Common Lisp has a huge ecosystem, but it can be hard to navigate. Often there's a choice of five libraries that seem to do the same thing, and figuring out which one is best for you can be challenging. Racket as a smaller but also more legible ecosystem. If it's good enough for do depends on your application. Same for Clojure, with the particularity that you also have easy access to the complete Java ecosystem, if you are willing to "think Java" for interfacing.
g

guitarvydas

08/30/2022, 9:06 AM
Why are you asking specifically about Lisp, instead of something more modern? Lisp is a tree-oriented assembler. That’s why I love it. Currently, my 2 favourite tools are Lispworks (for power and debugging) and Ohm-JS with Ohm-Editor (for draping multiple paradigms/syntaxes over powerful baubles). IMO, creativity and engineering are very deep, different topics with many subdivisions, each.
g

Garth Goldwater

08/31/2022, 4:38 PM
i like languages that take risks and go weird, so my favorite lisps are • picolisp (FEXPRs, integrated database, only 3 data types) • newLISP (unique scoping (dynamic and lexical), fexprs, lots of really weird choices) • Red/REBOL (we can argue if they’re lisps or merely inspired by lisp, but the absolute wildest model i’ve ever seen for scoping, program execution, metaprogramming)
bmitc

bmitc

11/09/2022, 7:15 AM
It's not one that I've used (though I've used Erlang and Elixir), but Lisp Flavoured Erlang (LFE) is an interesting entry into Lisps.