make-program macro