descriptionFor ease of implementation, I think we should make it an error to refer to an identifier before it is imported or define an identifier before it is exported. This allows modules to just do name control and not also have to be scopes.
So this would be an error (but still permitted as an extension in Schemes that can easily provide it):
(define x y)
(import (something defining y))