(assign evalable-ld-printingp nil) (defun mem (e x) (if (endp x) nil (if (equal e (car x)) t (mem e (cdr x))))) (defun app (x y) (if (endp x) y (cons (car x) (app (cdr x) y)))) (defun cons? (e x) ; Add element e to list x if it is not already ; there; else just return x. (if (mem e x) x (cons e x))) (defun app? (x y) ; Like app but does not introduce ; duplicate elements. (if (endp x) y (cons? (car x) (app? (cdr x) y)))) (quote (end of example)) (defun insert (e x) (if (endp x) (cons e x) (if (lexorder e (car x)) (cons e x) (cons (car x) (insert e (cdr x)))))) (insert 'susan '(joan mike tom ursalla)) (defun isort (x) (if (endp x) nil (insert (car x) (isort (cdr x))))) (isort '(susan ursalla joan tom mike))