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