Matthew Flatt wrote: > Fixed in SVN. 12 minutes -- I'm impressed. :)
What is the intended behavior? (Tomorrow I can download the nightly binary and try this out myself, but it might help to clarify this in the docs.) I ran into this because I couldn't figure it out from the docs. Some possible semantics I could imagine: 1. The module is compiled with internal links; the removal is only observable to newly compiled/eval'ed variable references. So `odd?' continues to work even after removing `even?'. 2. All variable references, even ones compiled in the module, go through the namespace table, so after the removal, even module code contains free variable references which become dynamic errors. So `odd?' fails dynamically after removing `even?'. 3. The removal is illegal and raises an error; you can't remove variables from module namespace. 4. The module namespace actually contains some sort of internal parent pointer to another top level namespace, and the removal is performed on the top level namespace, not the module namespace. Is any of these close? Thanks, Dave