Namespaces and Bindings |
GOO is a lexically scoped language. Bindings contain values and are looked up by name. Lexical bindings are visible from only particular textual ranges in a program. Lexical bindings shadow visible bindings of the same name.
At the topmost level, GOO provides simple modules that map from names to bindings. Each file introduces a new module with the same name as the file. Nested modules are supported by way of slashes in module names. Modules can import bindings exported by other modules, but currently there is no way to selectively exclude or rename imported bindings. Furthermore, no cycles can occur in the module use heterarchy.
where
,var | == ,name | (,name ,type) | L |
with ,name | ,type == (,name ,type) within lists. | ||
Namespaces and Bindings |