The Avail Programming Language
Mobile Users: Click here to view our text rendering warning.

Module Name Section

The Module keyword begins the module name section. The module name section must be the first section of every module header. Following this keyword is a string literal that specifies the local name of the module. The local name is a logical name, not a file system reference. As such it must match the file name, but must not include the .avail file extension. For example, a module named Foo must reside in a file whose name is Foo.avail, and its module name section should look like this:

Module "Foo"

Whitespace within a module header that does not occur within a string literal is deemed insignificant; it does not affect the meaning the module header. So Foo could also begin this way:

Module "Foo"

But the following is an illegal module name section for a module residing in Foo.avail, because it incorrectly declares the name of the module:

Module " Foo"

Local names occurring anywhere within a module header must never include a .avail file extension. Under usual circumstances, local names are resolved to file system paths via the standard module resolution mechanism.

‹ Module Headers | Return to Modules | Introduced Names Section ›