[r6rs-discuss] libraries are parameters (was set-car!)

AndrevanTonder andre at het.brown.edu
Wed Jun 27 12:12:00 EDT 2007


On Wed, 27 Jun 2007, Lynn Winebarger wrote:

>    The draft may not require an implementation compile libraries
> separately, but it does appear that whatever the semantics are, compiling
> separately or together must be equivalent.

For portable libraries, I believe that is the intention, but note that
the draft explicitly allows compiling separately or together to be
/inequivalent/ when expand-time state is involved, so any libraries
that use expand-time state in a way where this makes a difference
to the correctness of compilation are by fiat non-portable.

If you don't like that, consider the following:

   Libraries or programs that use runtime state are not portable.

This is because, as for compilation, the draft allows a program or library to 
use the values of bindings left over from yesterday's, or last year's, 
instantiations, without requiring reinitialization.

Andre



More information about the r6rs-discuss mailing list