Comment

Comment by chimeracoder

LISP (or Lisp) is a family of languages, not a single language. There are two main categories of Lisp dialects, the Lisp-1s and the Lisp-2s. Scheme is a Lisp-1.

Scheme is itself not a single language; it's a subcategory of Lisps. The main Scheme standard these days is R6RS (http://www.r6rs.org/), but different implementations may or may not comply with R6RS (Racket does not, for example, even though it was formerly known as PLT Scheme).

Common Lisp is the most well-known Lisp-2, and is what's generally implied when people say 'Lisp', even though that's technically a sloppy use of terminology.

Clojure is another dialect, but people generally specify Clojure and Scheme by name when referring to them. There is no logic behind these nuances of the terminology and their inconsistent usage; it's just what's evolved over the last 50+ years.

So, to answer your question, there's no reason why one should learn Scheme over Common Lisp (or vice versa), if all you're looking to do is learn the concepts.

There are differences between the different dialects (and their many implementations), but if you're looking to expand your knowledge and not necessarily write production code, pick Scheme (using Guile) and Common Lisp (using Clisp or SBCL) and you're good to go.

parent chimeracoder 13 years ago

Discussion

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton