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