MacroPackage: exclToCDocOverviewCGDocRelNotesFAQIndexPermutedIndex
Allegro CL version 9.0
Unrevised from 8.2 to 9.0.
8.2 version


Arguments: system-name options &body modules

This macro creates a new system with name system-name and options taken from options, containing module-groups specified by modules. system-name must be a symbol (we recommend using a keyword) which will identify the system. options must be a (possibly empty) list of keyword/value pairs. modules is a list consisting of one or more short form module-specifications and/or long form module-specifications.

This macro returns the symbol system-name.

The allowable options keywords are shown in the table below.

See also defsystem.htm for general information on the defsystem facility in Allegro CL and for a description of module specifications.


value type

default value


:pretty-name string print-name of system-name symbol This name will be used for printing.
:default-module-class symbol identifying a class ds:lisp-module

Predefined classes are:



ds:c-module. Users may define additional classes, see defsystem.htm.

:default-package package object or string or symbol naming a package The value of *package* Can be overridden for a module or module-group with the package option in the long module form. Also can be overridden during an operation with the package argument.
:default-pathname pathname object or string or symbol naming pathname *default-pathname-defaults* This pathname will be merged with the filenames of the modules of the system in order to find files.
:default-file-type string depends on value of :default-module-class - see notes at right. Specifies file type (extension) for source files for modules in system. If :default-module-class is ds:lisp-module, default is value of *source-file-types*; if ds:text-module, default is nil; if ds:c-module, default is "c".
:property-list property list nil The value is added to the property list of the system.

Table 1: options keywords and values

Copyright (c) 1998-2012, Franz Inc. Oakland, CA., USA. All rights reserved.
Documentation for Allegro CL version 9.0. This page was not revised from the 8.2 page.
Created 2012.5.30.

Allegro CL version 9.0
Unrevised from 8.2 to 9.0.
8.2 version