On Wed, May 26, 2021 at 11:49:57PM -0500, polifemo wrote:
> (prog . '((+ 1 2 3) (+ 4 5 6))) returns the expected value, 15, while
> (apply 'prog '((+ 1 2 3) (+ 4 5 6))) fails with "Address boundary error".

'apply' can be used only with functions evaluating their arguments (EXPRs or
SUBRs). It takes a list of already *evaluated* arguments, and passes these to
the function.

'prog' is an FEXPR (an FSUBR to be exact). It wants to evaluate each argument by
itself, one by one.

☺/ A!ex

-- 
UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe

Reply via email to