[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Scheme-reports] Formal Comment: clarify library loading rules

Richard Kelsey <kelsey@x> wrote:

> I'm not surprised.  What I would like to do is to get the report to
> provide a mechanism that will always work.  That can be done for
>  (import (...) (rename (...) (<id> <id2>)))
> by discussing levels and putting constraints on how many times the
> library is instantiated.  The 'alias' form avoids all that, which
> seems like a better fit for R7RS.

I should have been more clearn. In R7RS, the above does do what you
want, because there are no phases, and thus, you really can only
instantiate for a single runtime phase. You might have expansion time
bindings, but these are also only bound once, because there is only
one macro phase. 

Thus, this will work. ALIAS provides no greater guarantees in a system
with phases than does my "trick" above. ALIAS cannot make the
guarantee that the bindings will be the same across phases, and no
existing system works like this. If it did, then it would preclude
multiple instantiation semantics.

Aaron W. Hsu | arcfide@x | http://www.sacrideo.us
Programming is just another word for the lost art of thinking.

Scheme-reports mailing list