123456789101112131415161718192021222324252627282930313233343536373839404142 |
- %
- % OTHERS-SL.RED - Random Standard Lisp functions
- %
- % Author: Eric Benson
- % Symbolic Computation Group
- % Computer Science Dept.
- % University of Utah
- % Date: 20 August 1981
- % Copyright (c) 1981 University of Utah
- %
- % These are functions that didn't have a logical home
- % Most could have been defined portably, but were not for efficiency reasons
- on SysLisp;
- off R2I;
- syslsp procedure FixP U; %. Is U an integer?
- FixP U;
- on R2I;
- syslsp procedure Digit U; %. Is U an ID whose print name is a digit?
- IDP U and (U := IDInf U) >= char !0 and U <= char !9;
- syslsp procedure Liter U; %. Is U a single character alphabetic ID?
- IDP U and ((U := IDInf U) >= char A and U <= char Z
- or U >= char !a and U <= char !z);
- off SysLisp;
- CompileTime flag('(Length1), 'InternalFunction);
- lisp procedure Length U; %. Length of list U
- Length1(U, 0);
- lisp procedure Length1(U, N);
- if PairP U then Length1(cdr U, IAdd1 N) else N;
- END;
|