1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- \section{Symbolic Mode}
- \begin{Operator}{EQ}
- \begin{Syntax}
- \meta{expression} \name{eq} \meta{expression}
- \end{Syntax}
- \name{eq} is an infix binary comparison operator that returns {\em true\/}
- if the first expression points to the same object as the second. Users
- should be completely familiar with the concept of Lisp pointers and their
- comparison before using this operator.
- \begin{Comments}
- \name{eq} is {\em not\/}
- a reliable comparison between numeric arguments.
- \end{Comments}
- \end{Operator}
- \begin{Switch}{FASTFOR}
- The switch \name{fastfor} causes \nameref{for} loops to use so-called
- ``inum'' arithmetic in which simple arithmetic operations, such as
- updating operations on the looping variable, are replaced by machine
- operations.
- \begin{Comments}
- This switch should be used with care. Only code that is compiled should
- utilize its effect, since some of the operations used are not supported
- in interpreted mode. It is also the user's responsibility to ensure that
- the arithmetic operations are within the appropriate range, since no
- overflow is checked.
- \end{Comments}
- \end{Switch}
- \begin{Operator}{MEMQ}
- \begin{Syntax}
- \meta{expression} \name{memq} \meta{list}
- \end{Syntax}
- \name{member} is an infix binary comparison operator that evaluates to
- {\em true\/} if \meta{expression} is a \nameref{eq} to any member of
- \meta{list}.
- \begin{Examples}
- if 'a memq {'a,'b} then 1 else 0; & 1 \\
- if '(a) memq {'(a),'(b)} then 1 else 0; & 0
- \end{Examples}
- \begin{Comments}
- Since \name{eq} is not a reliable comparison between numeric arguments,
- one can't be sure that 1 for example is \name{memq} the list
- \name{\{1,2\}}.
- \end{Comments}
- \end{Operator}
|