(defmacro make-function-maker (name class-name) (list 'defmacro name '(args &body body) (list 'list ''make-instance (list 'quote class-name) :fun '(cons 'lambda (cons args body)))))