Scheme Languages
From the introduction of (R5RS):
- Scheme is a statically scoped and properly tail-recursive dialect of
the Lisp programming language [...] designed to have an exceptionally
clear and simple semantics and few different ways to form
expressions. A wide variety of programming paradigms, including
imperative, functional, and message passing styles, find convenient
expression in Scheme.
DrScheme supports many dialects of Scheme. Five of the dialects are
specifically designed for teaching computer science:
-
Beginning Student is a pedagogical
version of Scheme that is tailored for beginning computer
science students.
-
Beginning Student with List Abbreviations extends
Beginning Student with convenient (but potentially
confusing) ways to write lists, including quasiquote.
-
Intermediate Student adds
local bindings and higher-order functions.
-
Intermediate Student with Lambda adds
anonymous functions.
-
Advanced Student adds
mutable state.
Other dialects are designed for practicing programmers:
See for
further details on the languages, especially the teaching languages.
DrScheme's set of languages can be extended, so the above list is
potentially incomplete. However, documentation for all languages is
available through the
manuals page.
DrScheme's default language is Beginning Student. To change the
language, select the Set Language... item in the Language menu.