[r6rs-discuss] [Formal] Drop formal semantics of library toplevel
On Thu, 15 Mar 2007, Robby Findler wrote:
> lambda cannot express letrec.
Does the current semantics of DEFINE express LETREC*?
Regarding expressing LETREC* in terms of LAMBDA, giving some interpretation to
<undefined> would seem to be a low hurdle to clear to make this possible.
> Macro-expanding the top-level into a letrec and then showing its
> semantics would, again, make it harder to follow along with traces of
> a reduction sequence.
I do not see why some trivial extra nesting would make the reduction so
much more difficult to follow.
The fact remains that after macro expansion, it is explicitly stated that all
that remains is the equivalent of a letrec*. I agree that one can reverse
this into a sequence of definitions and expressions and that a separate
semantics can be given for the latter. But I do not see a justification for
the large extra volume and extra complexity of the semantics. I do think any
added complexity of something do basic to the definition of the language needs
stronger justification than given.
> (Also, as I understand it, the jury is still out on whether or not the
> top-level of a module is the same as a lambda. See Kent's earlier
> formal comment.)
As I understand it, no-one in that thread disputed that a module can be
expressed in terms of letrec*.
Andre
Received on Thu Mar 15 2007 - 12:07:06 UTC
This archive was generated by hypermail 2.3.0
: Wed Oct 23 2024 - 09:15:01 UTC