(define a (lambda (x) (cond ((eq? x 'true) 'true) ((eq? x 'false) 'false) ((symbol? x) x) ((boolean? x) x) ((number? x) x) ((eq? (a (car (cdr x))) 'and) (cond ((eq? (a (car x)) 'false) 'false) ((eq? (a (car (cdr (cdr x)))) 'false) 'false) ((and (eq? (a (car x)) 'true) (eq? (a (car (cdr (cdr x)))) 'true))'true) ) ) ((eq? (a (car (cdr x))) 'or) (cond ((eq? (a (car x)) 'true) 'true) ((eq? (a (car (cdr (cdr x)))) 'true) 'true) ) ) ) ;list((car x)(car (cdr x))(car (cdr (cdr x) ))) ) )