[plt-scheme] all-except in require

From: Matthew Flatt (mflatt at cs.utah.edu)
Date: Wed Jun 14 14:47:14 EDT 2006

At Wed, 14 Jun 2006 16:52:58 +0100, Matt Jadud wrote:
> In the (require ...) form, I can do an 'all-except'. No error is 
> generated when I 'except' a name that doesn't exist:
> (module foo mzscheme
>    (provide (all-defined))
>    (define x 3)
>    (define y 5))
> (module bar mzscheme
>    (require (all-except foo z))
>    (printf "Sum: ~a" (+ x y)))

That's a bug. Ill fix it after v350 is released.

> While I'm at it, 'all-except' in the 'require' and 'all-from-except' in 
> the 'provide' are very close in name, and semantically the same.

Not exactly the same. `all-except' starts with all of the exports of
the named module. `all-from-except' starts with only the things
imported into the current module from the named module. So, that's why
they have different names.


Posted on the users mailing list.