26 ms·
I'm not the parent, but "lisps" covers a very large part of the language design space, including languages which have almost nothing in common with each other (
by chriswarbo 8y ago
I'm not the parent, but "lisps" covers a very large part of the language design space, including languages which have almost nothing in common with each other (e.g. Dylan doesn't use s-expressions, Carp uses static types and manual memory management, etc.).
I would narrow this down to the "major" Lisp languages/standards, which pretty much means Common Lisp, Clojure, Scheme and Racket.
Out of these Scheme has a history of use for teaching (e.g. SICP) and Racket has a history of use in research (Racket used to be called Programming Language Theory Scheme, AKA PLT Scheme). Personally I'd recommend those wanting to learn "a lisp" to try a Scheme implementation, and Racket is a particularly good Scheme implementation (with lots of other good stuff built on top too, like support for creating custom languages).