DrScheme supports four dialects of Scheme, including three that are specifically designed for teaching computer science:
Beginning Student Scheme is a pedagogical
version of Scheme that is tailored for beginning computer
science students.
Intermediate Student Scheme extends
Beginning Student Scheme with local bindings.
Advanced Student Scheme extends
Intermediate Student Scheme with higher-order procedures and mutable
state.
Full Scheme 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. At this level, there are options to
access graphical libraries for creating GUI applications, and
to provide source location information for debugging. See also
and . Full Scheme refers to two main options: Textual (MzScheme) and Graphical (MrEd). Each option comes with and without debugging support.
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 .
Debugging support refers to source highlighting when an exception is raised. The non-debugging options are faster and support exactly those languages that can be run outside of DrScheme.
For details about the differences between these languages, see .
For further general
information about Scheme, see How to
Design Programs.