perm filename MIDSOL[206,LSP] blob
sn#131456 filedate 1974-11-20 generic text, type T, neo UTF8
(DEFPROP MIDFNS
(NIL GETT POINT ALLPOINT TRANSPOSE POWER)
VALUE)
(DEFPROP GETT
(LAMBDA (Y P) (COND ((NULL P) Y) ((EQ (CAR P) (QUOTE A)) (GETT (CAR Y) (CDR P))) (T (GETT (CDR Y) (CDR P)))))
EXPR)
(DEFPROP POINT
(LAMBDA(X Y)
(COND ((EQUAL X Y) NIL)
((ATOM Y) (QUOTE FAIL))
(T
((LAMBDA(U)
(COND ((EQ U (QUOTE FAIL))
((LAMBDA (V) (COND ((EQ V (QUOTE FAIL)) (QUOTE FAIL)) (T (CONS (QUOTE D) V))))
(POINT X (CDR Y))))
(T (CONS (QUOTE A) U))))
(POINT X (CAR Y))))))
EXPR)
(DEFPROP ALLPOINT
(LAMBDA(X Y)
(COND ((EQUAL X Y) (QUOTE (NIL)))
((ATOM Y) NIL)
(T
(APPEND (MAPCAR (FUNCTION (LAMBDA (W) (CONS (QUOTE A) W))) (ALLPOINT X (CAR Y)))
(MAPCAR (FUNCTION (LAMBDA (W) (CONS (QUOTE D) W))) (ALLPOINT X (CDR Y)))))))
EXPR)
(DEFPROP TRANSPOSE
(LAMBDA(U)
(COND ((NULL (CAR U)) NIL) (T (CONS (MAPCAR (FUNCTION CAR) U) (TRANSPOSE (MAPCAR (FUNCTION CDR) U))))))
EXPR)
(DEFPROP POWER
(LAMBDA(U)
(COND ((NULL U) (QUOTE (NIL)))
(T ((LAMBDA (W) (APPEND W (MAPCAR (FUNCTION (LAMBDA (X) (CONS (CAR U) X))) W))) (POWER (CDR U))))))
EXPR)