3 ms·
This wasn't meant to be valid code in any existing lisp, just lisp pseudo code. The behaviors you describe as bugs don't exist in all macro systems; for example
by tines 5y ago
This wasn't meant to be valid code in any existing lisp, just lisp pseudo code. The behaviors you describe as bugs don't exist in all macro systems; for example, some macro systems automatically splice symbols from the context, some automatically prevent double-evaluation, and in purely functional languages double-evaluation doesn't matter anyway. I didn't want to get distracted by these irrelevant details from my main point, which, alas, has happened anyway.