About Scheme
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 five dialects of Scheme, including three that are
specifically designed for teaching computer science:
-
Beginner Scheme is a pedagogical
version of Scheme that is tailored for beginning computer
science students.
-
Intermediate Scheme extends
Beginner Scheme with local bindings.
-
Advanced Scheme extends
Intermediate Scheme with higher-order procedures and mutable
state.
-
MzScheme is a practical dialect of
Scheme, essentially a superset of R5RS Scheme (except for
macros). In addition to the the base Scheme language, MzScheme
provides exceptions, threads, objects, components, regular
expressions, TCP support, filesystem utilities, and process
control operations. See also .
-
MrEd extends MzScheme with a
graphical toolbox for creating GUI applications (with special
support for editor applications, hence the Ed
in MrEd). See also .
For details about the differences between these languages, see
.
For further general
information about Scheme, see how to
design programs.