Artifact 08b009e71307b0c3ac888fb1144ca55a9f139ac69b0ccaa08ddf63162198c9bf:
- File
psl-1983/3-1/glisp/glprop.sl
— part of check-in
[eb17ceb7f6]
at
2020-04-21 19:40:01
on branch master
— Add Reduce 3.0 to the historical section of the archive, and some more
files relating to version sof PSL from the early 1980s. Thanks are due to
Paul McJones and Nelson Beebe for these, as well as to all the original
authors.git-svn-id: https://svn.code.sf.net/p/reduce-algebra/code/historical@5328 2bfe0521-f11c-4a00-b80e-6202646ff360 (user: arthurcnorman@users.sourceforge.net, size: 1137) [annotate] [blame] [check-ins using] [more...]
% GSN 11-JAN-83 09:59 % Create a function call to retrieve the field IND from a % property-list type structure. FLG is true if a PROPLIST is inside % an ATOM structure. (DE GLPROPSTRFN (IND DES DESLIST FLG) (PROG (DESIND TMP RECNAME N) % Handle a PROPLIST by looking inside each property for IND. (COND ((AND (EQ (SETQ DESIND (pop DES)) 'RECORD) (ATOM (CAR DES))) (SETQ RECNAME (pop DES)))) (SETQ N 0) P (COND ((NULL DES) (RETURN NIL)) ((AND (PAIRP (CAR DES)) (ATOM (CAAR DES)) (CDAR DES) (SETQ TMP (GLSTRFN IND (CAR DES) DESLIST))) (SETQ TMP (GLSTRVAL TMP (glgencode (CASEQ DESIND (ALIST (LIST 'GLGETASSOC (KWOTE (CAAR DES)) '*GL*)) ((RECORD OBJECT) (COND ((EQ DESIND 'OBJECT) (SETQ N (ADD1 N)))) (LIST 'GetV '*GL* N)) ((PROPLIST ATOMOBJECT) (LIST (COND ((OR FLG (EQ DESIND 'ATOMOBJECT)) 'GETPROP) (T 'LISTGET)) '*GL* (KWOTE (CAAR DES)))))))) (RETURN TMP)) (T (pop DES) (SETQ N (ADD1 N)) (GO P)))))