Here's a beginner's question:
How can I determine which runtime conditionals are defined in a given
implementation of Common Lisp? For example, in CMUCL,
Loaded subsystems:
Python 1.0, target Intel x86 CLOS based on PCL version: September 16
92 PCL (f)
* (setq haveit #+CMU "yep" #-CMU "nope")
"yep"
It took me a while to determine that I should use CMU instead of CMUCL. I
immediately guessed that clisp used CLISP. How can I determine these
things without resorting to trial and error? (Yes, I looked in the CMUCL
manual.)
Thanks, Jim Amundson
"James Amundson" <········@fnal.gov> writes:
> Loaded subsystems:
> Python 1.0, target Intel x86 CLOS based on PCL version: September 16
> 92 PCL (f)
> * (setq haveit #+CMU "yep" #-CMU "nope")
>
> "yep"
>
> It took me a while to determine that I should use CMU instead of CMUCL. I
> immediately guessed that clisp used CLISP. How can I determine these
> things without resorting to trial and error? (Yes, I looked in the CMUCL
> manual.)
*features*
Take a look into the special variable *features*.
This list contains all runtime-specific "features" ;-)
#+CMU means: evaluate the following form if CMU is in the
*features*-list
#-CMU means: evaluate the following form if CMU is _not_ in the
*features*-list
James Amundson wrote:
> Here's a beginner's question:
>
> How can I determine which runtime conditionals are defined in a given
> implementation of Common Lisp? For example, in CMUCL,
>
> Loaded subsystems:
> Python 1.0, target Intel x86 CLOS based on PCL version: September 16
> 92 PCL (f)
> * (setq haveit #+CMU "yep" #-CMU "nope")
>
> "yep"
>
> It took me a while to determine that I should use CMU instead of CMUCL. I
> immediately guessed that clisp used CLISP. How can I determine these
> things without resorting to trial and error? (Yes, I looked in the CMUCL
> manual.)
>
> Thanks, Jim Amundson