(PROCLAIM '(OPTIMIZE SPEED)) (IMPORT-MODULE "initial-env") (IN-PACKAGE "BOOTTRAN") (PROVIDE "utility") (EXPORT '(|objectMember?| |symbolMember?| |stringMember?| |charMember?| |scalarMember?| |listMember?|)) (DEFUN |objectMember?| (|x| |l|) (COND ((CONSP |l|) (OR (EQ |x| (CAR |l|)) (|objectMember?| |x| (CDR |l|)))) (T (EQ |x| |l|)))) (DEFUN |genericMember?| (|x| |l| |p|) (COND ((NULL |l|) NIL) ((CONSP |l|) (OR (APPLY |p| |x| (CAR |l|) NIL) (|genericMember?| |x| (CDR |l|) |p|))) (T (APPLY |p| |x| |l| NIL)))) (DEFUN |symbolMember?| (|x| |l|) (|genericMember?| |x| |l| #'EQ)) (DEFUN |stringMember?| (|s| |l|) (|genericMember?| |s| |l| #'STRING=)) (DEFUN |charMember?| (|c| |l|) (|genericMember?| |c| |l| #'CHAR=)) (DEFUN |scalarMember?| (|x| |l|) (|genericMember?| |x| |l| #'EQL)) (DEFUN |listMember?| (|x| |l|) (|genericMember?| |x| |l| #'EQUAL))