Common Lisp the Language, 2nd Edition


next up previous contents index
Next: Identity Function Up: Environment Inquiries Previous: Time Functions

25.4.2. Other Environment Inquiries

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.

old_change_begin
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.
old_change_end

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

change_begin
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.
change_end



next up previous contents index
Next: Identity Function Up: Environment Inquiries Previous: Time Functions


AI.Repository@cs.cmu.edu