Directives control the behavior of the compiler. They apply to the remainder of the current compilation unit.
The two directives #open and #close modify the list of
opened modules, that the compiler uses to complete unqualified
identifiers, as described in section 3.3. The directive
#open string adds the module whose name is given by the string
constant string to the list of opened modules, in first position.
#close string removes the first occurrence of the
module whose name is given by the string constant string from the
list of opened modules.
Implementations can provide other directives, provided they follow the
# ident string, where ident is the name of the directive,
and the string constant string is the argument to the directive. The
behavior of these additional directives is implementation-dependent.