Remix.run Logo
lispm 7 months ago

Scheme is a general category of probably 100+ implementations of various versions of the language based on various specs and standards. Small educational languages based on R4RS, R5RS. Then there is the more controversial R6RS and later a R7RS small and attempts to define a R7RS large. Then there are 100+ of language extensions in various states described in SRFIs. The there is an official language standard IEEE Scheme, which is not widely used (AFAIK). Then there are various subsets of the language Scheme used in education. For example in SICP there is a minimal Scheme subset used in the book. Scheme also spawned its own dialects (or maybe derived language), like Racket, which then has a new dialect Rhombus...

Lisp is either a family of language families (Lisps, Scheme, Logo, ML, MDL, JavaScript, Dylan, Racket, R, ...)

or

a more narrowly defined family of languages (often recognizable because they identify as Lisp in their name) and based on the core from Lisp 1: Lisp 1, Lisp 1.5, BBN Lisp, Interlisp, Maclisp, Franz Lisp, ZetaLisp, Le_Lisp, EuLisp, muLisp, Common Lisp (a standardized language), Emacs Lisp, Standard Lisp, ISLISP (a standardized language), ...

You'll find often in the Scheme literature Lisp described as a different, but related/derived, language (more symbolic, less functional, more procedural, procedural macros, less clean, less systematic, more dynamic, ...). Scheme is seen more functional, more lexical binding, less procedural, more minimal, one namespace, cleaner, ...).