home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / Misc / CLISP-1.LHA / CLISP960530-sr.lha / tests / lists154.tst < prev    next >
Encoding:
Text File  |  1996-04-15  |  4.5 KB  |  256 lines

  1.  
  2. (SUBST 'A 'B
  3.        '(U B
  4.            (B)
  5.            C))
  6. (U A
  7.    (A)
  8.    C)
  9.  
  10. (SUBST 'A 'B
  11.        '(U B
  12.            (B)
  13.            C)
  14.        :TEST-NOT
  15.        #'(LAMBDA (X Y)
  16.                 (IF (ATOM Y)
  17.                     (EQL X Y)
  18.                     T)))
  19. (A B
  20.    (B . A)
  21.    A . A)
  22.  
  23. (SUBST 'A 'B
  24.        '(U B
  25.            (B)
  26.            C)
  27.        :TEST
  28.        #'(LAMBDA (X Y)
  29.                 (NOT (EQL X Y))))
  30. A
  31.  
  32. (SUBST 'A 'B
  33.        '(U B
  34.            (B)
  35.            C)
  36.        :TEST-NOT
  37.        #'(LAMBDA (X Y)
  38.                 (NOT (EQL X Y))))
  39. (U A
  40.    (A)
  41.    C)
  42.  
  43. (SUBST 'A 'B
  44.        '(U B
  45.            (B)
  46.            C)
  47.        :TEST-NOT
  48.        #'(LAMBDA (X Y)
  49.                 (NOT (EQL X Y)))
  50.        :KEY
  51.        #'(LAMBDA (U)
  52.                 (IF (LISTP U)
  53.                     (CAR U))))
  54. (U . A)
  55.  
  56. (SUBST-IF 'NUMMMER 'NUMBERP
  57.        '((A (7 (V 6)))))
  58. ((A (NUMMMER (V NUMMMER))))
  59.  
  60. (SUBST-IF-NOT 'NUMMMER 'NUMBERP
  61.        '((A (7 (V 6)))))
  62. NUMMMER
  63.  
  64. (SUBST-IF-NOT 'NUMMMER
  65.        #'(LAMBDA (X)
  66.                 (AND (LISTP X)
  67.                      (NUMBERP X)))
  68.        '((A (7 (V 6)))))
  69. NUMMMER
  70.  
  71. (SUBST-IF-NOT 'NUMMMER
  72.        #'(LAMBDA (X)
  73.                 (OR (LISTP X)
  74.                     (NUMBERP X)))
  75.        '((A (7 (V 6)))))
  76. ((NUMMMER (7 (NUMMMER 6))))
  77.  
  78. (NSUBST 'A 'B
  79.        '(U B
  80.            (B)
  81.            C)
  82.        :TEST-NOT
  83.        #'(LAMBDA (X Y)
  84.                 (IF (ATOM Y)
  85.                     (EQL X Y)
  86.                     T)))
  87. (A B
  88.    (B . A)
  89.    A . A)
  90.  
  91. (NSUBST 'A 'B
  92.        '(U B
  93.            (B)
  94.            C)
  95.        :TEST-NOT
  96.        #'(LAMBDA (X Y)
  97.                 (NOT (EQL X Y))))
  98. (U A
  99.    (A)
  100.    C)
  101.  
  102. (NSUBST 'A 'B
  103.        '(U B
  104.            (B)
  105.            C)
  106.        :TEST
  107.        #'(LAMBDA (X Y)
  108.                 (NOT (EQL X Y))))
  109. A
  110.  
  111. (NSUBST-IF 'OO 'NUMBERP
  112.        '(A B C
  113.            (3 (4)
  114.               0)))
  115. (A B C
  116.    (OO (OO)
  117.        OO))
  118.  
  119. (NSUBST-IF-NOT 'OO 'NUMBERP
  120.        '(A B C
  121.            (3 (4)
  122.               0)))
  123. OO
  124.  
  125. (NSUBST-IF-NOT 'OO
  126.        #'(LAMBDA (X)
  127.                 (OR (ATOM X)
  128.                     (NUMBERP X)))
  129.        '(A B C
  130.            (3 (4)
  131.               0)))
  132. OO
  133.  
  134. (NSUBST-IF-NOT 'OO
  135.        #'(LAMBDA (X)
  136.                 (AND (ATOM X)
  137.                      (NUMBERP X)))
  138.        '(A B C
  139.            (3 (4)
  140.               0)))
  141. OO
  142.  
  143. (NSUBST-IF-NOT 'OO
  144.        #'(LAMBDA (X)
  145.                 (OR (LIST X)
  146.                     (NUMBERP X)))
  147.        '(A B C
  148.            (3 (4)
  149.               0)))
  150. (A B C
  151.    (3 (4)
  152.       0))
  153.  
  154. (NSUBST-IF-NOT 'OO
  155.        #'(LAMBDA (X)
  156.                 (OR (LIST X)
  157.                     (SYMBOLP X)))
  158.        '(A B C
  159.            (3 (4)
  160.               0)))
  161. (A B C
  162.    (3 (4)
  163.       0))
  164.  
  165. (SUBLIS '((A . A1)
  166.           (B . B1))
  167.        '(A B))
  168. (A1 B1)
  169.  
  170. (SUBLIS '((A . A1)
  171.           (B . B1))
  172.        '(A B
  173.            (B . C)))
  174. (A1 B1
  175.     (B1 . C))
  176.  
  177. (SUBLIS '((A . A1)
  178.           (B . B1)
  179.           (NIL . NIL1))
  180.        '(A B
  181.            (B . C)))
  182. (A1 B1
  183.     (B1 . C) .
  184.     NIL1)
  185.  
  186. (SUBLIS '((A . A1)
  187.           (B . B1)
  188.           (NIL . NIL1))
  189.        '(A B
  190.            (B C)))
  191. (A1 B1
  192.     (B1 C . NIL1) .
  193.     NIL1)
  194.  
  195. (SUBLIS '((A . A1)
  196.           (B . B1)
  197.           (NIL . NIL1))
  198.        '(A B
  199.            (B C))
  200.        :TEST-NOT 'EQL)
  201. A1
  202.  
  203. (SUBLIS '((A . A1)
  204.           (B . B1)
  205.           (NIL . NIL1))
  206.        '(A B
  207.            (B C))
  208.        :TEST-NOT
  209.        #'(LAMBDA (X Y)
  210.                 (IF (ATOM Y)
  211.                     (EQL X Y))))
  212. A1
  213.  
  214. (SUBLIS '(((A) .
  215.            UU)
  216.           (A . II))
  217.        '(I (A)
  218.            A))
  219. (I (II)
  220.    II)
  221.  
  222. (SUBLIS '(((A) . UU) (A . II))
  223.        '(I (A) A)
  224.        :KEY #'(LAMBDA (X) (IF (LISTP X) (CAR X))))
  225. (I II . II) ; KEY wird angewandt auf: X ein Blatt des Baumes
  226.  
  227. (SUBLIS '(((A) . UU) (A . II))
  228.        '(I (A) A)
  229.        :TEST #'(LAMBDA (X Y) (IF (LISTP Y) (EQL X (CAR Y)))))
  230. #+(or XCL AKCL LUCID)  (I II . II) ; X aus der Aliste, Y ein Blatt des Baumes
  231. #+(or CLISP CMU)       (I (UU) UU) ; X ein Blatt, Y aus der Aliste
  232. #-(or XCL CLISP AKCL CMU LUCID) UNKNOWN
  233.  
  234. (NSUBLIS '(((A) . UU) (A . II))
  235.        '(I (A) A)
  236.        :KEY #'(LAMBDA (X) (IF (LISTP X) (CAR X))))
  237. (I II . II) ; KEY wird angewandt auf: X ein Blatt des Baumes
  238.  
  239. (NSUBLIS '(((A) . UU) (A . II))
  240.        '(I (A) A)
  241.        :TEST #'(LAMBDA (X Y) (IF (LISTP X) (EQUAL X Y))))
  242. (I UU . UU)
  243.  
  244. (NSUBLIS '(((A) . UU) (A . II))
  245.        '(I (A) A)
  246.        :TEST #'(LAMBDA (X Y) (IF (LISTP Y) (EQUAL X Y))))
  247. (I UU . UU)
  248.  
  249. (NSUBLIS '(((A) . UU) (A . II))
  250.        '(I (A) A)
  251.        :TEST #'(LAMBDA (X Y) (IF (LISTP Y) (EQL X (CAR Y)))))
  252. #+(or XCL AKCL)        (I II . II) ; X aus der Aliste, Y ein Blatt des Baumes
  253. #+(or CLISP CMU LUCID) (I (UU) UU) ; X ein Blatt, Y aus der Aliste
  254. #-(or XCL CLISP AKCL CMU LUCID) UNKNOWN
  255.  
  256.