Namespaces are implemented by the simple expedient of creating new include files with all global identifiers renamed with a prefix. The new filename is the old filename with '-' and the namespace tag appended. This causes a directory listing to group the original and created files together. A future option would be to put created files in a separate directory.
Namespaces are created by including a file using the 'as' keyword. Thet are accessed with ':'
Example:
include foo.e as X |
=> |
include foo-X.e |
The file foo.e is translated into foo-X.e with all of its global identifiers prepended with "X_" |
X:foo |
=> |
X_foo |
rename to match the namespaced include file |