Common Lisp the Language, 2nd Edition
![]()
Next: Identity Function
Up: Environment Inquiries
Previous: Time Functions
For any of the following functions, if no appropriate and relevant
result can be produced, nil is returned instead of a
string.
Rationale: These inquiry facilities are functions rather than variables against the possibility that a Common Lisp process might migrate from machine to machine. This need not happen in a distributed environment; consider, for example, dumping a core image file containing a compiler and then shipping it to another site.
[Function]
lisp-implementation-type
A string is returned that identifies the generic name of the
particular Common Lisp implementation. Examples:
"Spice LISP", "Zetalisp".
[Function]
lisp-implementation-version
A string is returned that identifies the version of the particular
Common Lisp implementation; this information should be of use to
maintainers of the implementation. Examples: "1192",
"53.7 with complex numbers",
"1746.9A, NEWIO 53, ETHER 5.3".
[Function]
machine-type
A string is returned that identifies the generic name of the computer
hardware on which Common Lisp is running. Examples:
"IMLAC", "DEC PDP-10",
"DEC VAX-11/780".
[Function]
machine-version
A string is returned that identifies the version of the computer
hardware on which Common Lisp is running. Example:
"KL10, microcode 9".
[Function]
machine-instance
A string is returned that identifies the particular instance of the
computer hardware on which Common Lisp is running; this might be a local
nickname, for example, or a serial number. Examples:
"MIT-MC", "CMU GP-VAX".
[Function]
software-type
A string is returned that identifies the generic name of any relevant
supporting software. Examples: "Spice",
"TOPS-20", "ITS".
[Function]
software-version
A string is returned that identifies the version of any relevant supporting software; this information should be of use to maintainers of the implementation.
[Function]
short-site-name
long-site-name
A string is returned that identifies the physical location of the
computer hardware. Examples of short names: "MIT AI Lab",
"CMU-CSD". Examples of long names:
"MIT Artificial Intelligence Laboratory"
"Massachusetts Institute of Technology
Artificial Intelligence Laboratory"
"Carnegie-Mellon University Computer Science Department"
See also user-homedir-pathname.
[Variable]
*features*
The value of the variable *features* should be a list of
symbols that name ``features’’ provided by the implementation. Most such
names will be implementation-specific; typically a name for the
implementation will be included.

One standard feature name is ieee-floating-point, which
should be present if and only if full IEEE proposed floating-point
arithmetic [23] is
supported.

The value of this variable is used by the #+ and
#- reader syntax.

X3J13 voted in March 1988 (SHARPSIGN-PLUS-MINUS-PACKAGE) to specify
that feature names used with #+ and #- are
read in the keyword package unless an explicit prefix
designating some other package appears. The standard feature name
ieee-floating-point is therefore actually the keyword
:ieee-floating-point, though one need not write the colon
when using it with #+ or #-; thus
#+ieee-floating-point and
#+:ieee-floating-point mean the same thing.

![]()
Next: Identity Function
Up: Environment Inquiries
Previous: Time Functions
AI.Repository@cs.cmu.edu