Dylan Language Extensions¶
The Dylan language is described in The Dylan Reference Manual by Andrew Shalit (Addison-Wesley, 1996). We call this book “the DRM” hereafter.
Open Dylan provides an implementation of the Dylan language described by the DRM, with a few exceptions that are documented in Language Differences.
Open Dylan provides the Dylan language in the dylan
module of the
dylan
library.
This document is an introduction to Open Dylan’s extensions to the
Dylan language. These extensions are either built in to the dylan
library or are available in a separate library, common-dylan.
The majority of the extensions are in the common-extensions module of the common-dylan library. That library also exports a number of smaller modules that contain other basic facilities such as simplified formatting, pseudo-random integer generation, and object finalization.
Open Dylan provides a convenience library, common-dylan
, that
combines the dylan
and common-extensions
modules to provide a
convenient “dialect” of Dylan, exported from the module common-dylan
:
define library common-dylan
use dylan, export: all;
use common-extensions, export: all;
export common-dylan;
end module;
define module common-dylan
use dylan, export: all;
use common-extensions, export: all;
end module;
This section describes Dylan language extensions, that is, extensions made to
the Dylan library, and to the base language syntax, as they are defined in the
DRM. These extensions are available to applications in the dylan
library’s
dylan
module.
- Language Differences
- Function Definition
- Extensions to the FOR iteration construct
- Weak tables
- Inlining adjectives for methods, constants, functions, and slots
- Integers
- object-with-elements
- Macro System Extensions
- Parser Expansions
- Alternative Curry Syntax
- Numeric Literal Syntax
- String Literal Syntax
All the other language extensions are described in The common-dylan Library.