[plt-scheme] all-except in require

From: Matt Jadud (mcj4 at kent.ac.uk)
Date: Wed Jun 14 11:52:58 EDT 2006

Hi Matthew, Robby,

Thanks for the early-morning help. This one is just a question, really:

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)))

Does it make sense to be able to "except" a name that isn't defined? It 
doesn't seem to hurt anything to allow it, but I noted it, and thought 
I'd ask.

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. Was it 
an intentional choice to name them differently, or just how things evolved?

Thanks again,

Posted on the users mailing list.