> But basically I think the expanded form should not have to depend on a
> possible different implementation.
It does not. The output of the do macro (all macros) gets re-
expanded until it's fully in core form. I don't understand what you
mean by different implementations of letrec. The expander would
ultimately just call the build-letrec procedure in which you can do
anything you please. You can leave it as a letrec, or expand it
further: your choice.
On Jan 10, 2008, at 1:30 AM, leppie wrote:
> But basically I think the expanded form should not have to depend on a
> possible different implementation.
It does not. The output of the do macro (all macros) gets re-
expanded until it's fully in core form. I don't understand what you
mean by different implementations of letrec. The expander would
ultimately just call the build-letrec procedure in which you can do
anything you please. You can leave it as a letrec, or expand it
further: your choice.