[Openmcl-devel] Shortcircuiting of argument evaluation in #'<
tfb at tfeb.org
Wed Jan 9 14:30:13 PST 2013
On 9 Jan 2013, at 16:19, Tom Emerson wrote:
> Common Lisp doesn't use lazy semantics for function calls, so CCL is
> behaving incorrectly. Both SBCL and LispWorks work correctly (per the
> HyperSpec) with the original example.
Right. And the answer to the don't-evaluate-needlessly thing is right there: don't patch up things to have peculiar and idiosyncratic semantics (ie don't make (< x y z) and (funcall #'< x y z) have different semantics), but implement a lazy dialect of Lisp which brings this benefit to *all* functions, for free.
More information about the Openmcl-devel