(defun interp-call (call env cc) (map-interp call env #'(lambda (fa) (apply (car fa) cc (cdr fa))))) (defun map-interp (list env cc) (if (null list) (funcall cc nil) (interp (car list) env #'(lambda (x) (map-interp (cdr list) env #'(lambda (y) (funcall cc (cons x y))))))))