1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
DEFINE((
(REVERSE (LAMBDA (LST) (PROG (L RES)
                  (SETQ L LST)
            L     (COND ((NULL L) (RETURN RES)))
                  (SETQ RES (CONS (CAR L) RES))
                  (SETQ L (CDR L))
                  (GO L))))
 
(MEMBER (LAMBDA (ITEM LST) (COND
           ((EQ ITEM (CAR LST)) LST)
           (T (MEMBER ITEM (CDR LST))))))

(UNIQ (LAMBDA (LST) (PROG (L RES)
               (SETQ L LST)
         L     (COND ((NULL L) (RETURN (REVERSE RES))))
               (COND ((MEMBER (CAR L) RES) ())
                     (T (SETQ RES (CONS (CAR L) RES))))
               (SETQ L (CDR L))
               (GO L))))  ))

UNIQ((3 1 4 1 5 9 2 6 5 3 5 8 9 7 9))