[plt-scheme] "require" introduces additional bindings in language modules

From: Matthew Flatt (mflatt at cs.utah.edu)
Date: Sun Jul 16 19:51:36 EDT 2006

At Sun, 16 Jul 2006 15:56:38 -0400, "Kimberley Burchett" wrote:
> Why doesn't the following cause an error?
> 
> (module mylang mzscheme
>   (provide #%module-begin #%top require))
> (module test-mylang mylang
>   (require (only mzscheme add1))
>   sub1)   <------ sub1 should be undefined here!
> 
> If I remove the require, or I just use regular modules instead of a
> language module, then I get an error message as expected.  Is there
> some subtle interaction between #%module-begin and require that I'm
> interfering with?

No, another bug. The `only' form didn't work right when the source
module re-exports nearly all bindings from the built-in `#%kernel'
module.

This one is now fixed in SVN.

Thanks,
Matthew



Posted on the users mailing list.