[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Control the order of expansion of syntax-case macros
From: |
Nala Ginrut |
Subject: |
Re: Control the order of expansion of syntax-case macros |
Date: |
Fri, 20 Dec 2024 19:38:59 +0900 |
>
>
> So my guess is that syntax objects are expanded lazily. Is there
> something I can do to get #'world expanded before #'hello?
>
More accurately, it's Normal Order for macro and special form (actually
it's another fancy name of internal implemented macro), you may want to
take a look through the "application order vs normal order" part inside
SICP.
Here's a simple formula to understand practical Lazy:
Lazy = Normal + Updating
"Updating" is another fancy academic term for caching the evaluated value
to prevent redundant computation. Say, memorization.
I could be blamed for the over simplified explanation to say Normal Order
rather than more general term non-strict-evaluation, Normal Order is just
one of them, theoretically, but most useful.
In your case, there's no updating, so you shouldn't claim it "Lazy" in
computation. :-)
Best regards.