parsing arguments for functions



Possibly less broken:

(defun simp-interval (e yy z)
  (declare (ignore yy))
  (let ((a) (b) (g))
    (pop e)
    (setq a (if e (simpcheck (pop e) z) (wna-err '$interval)))
    (setq b (if e (simpcheck (pop e) z) (wna-err '$interval)))
    (setq g (cond ((null e) (take '(hidden-arg)))
    (t
     (setq e (car e))
     (cond ((and e (and (consp e) (consp (car e)) (eq (caar e)
     'hidden-arg)))
     (simpcheck e z))
    (t (wna-err '$interval))))))
    (if (like a b) a `(($interval simp) ,a ,b ,g))))

Barton