- (cond ((or (eq indicator :value)
- (eq indicator :leaf))
- (if args
- (setf value (pop args) valuep t)
- (setf value nil valuep t)))
- ((eq indicator :function)
- (setf function (arg)))
- ((functionp indicator)
- (setf function indicator))
- (t
- (setf value indicator valuep t)))))
+ (case indicator
+ ((:value :leaf)
+ (if args
+ (setf value (pop args) valuep t)
+ (setf value nil valuep t)))
+ (:function
+ (setf function (arg)))
+ (:predicate
+ (setf predicate (arg)))
+ (t
+ (cond ((functionp indicator)
+ (setf function indicator))
+ (t
+ (setf value indicator valuep t)))))))