Exhaustively execute a function call.
(interpret function arguments program) → value?
This is a program-mode executable counterpart of the logic-mode non-executable function exec-call. It is a possibly non-terminating interpreter.
Function:
(defun interpret (function arguments program) (declare (xargs :guard (and (symbol-valuep function) (value-listp arguments) (programp program)))) (let ((__function__ 'interpret)) (declare (ignorable __function__)) (interpret-loop (eval-state-init function arguments) program)))