Overview

A module is an explicitly-declared namespace within your MUFL code for the purposes of component encapsulation, reuse, and visibility.

As with libraries, modules can contain functions, variables, types, and other (nested) modules. You might consider a module to be a more local version of a library, and vice versa, a library to be the outermost module.

Unlike libraries, modules cannot use the loads syntax.

Modules can be nested to unlimited depth, although deep nesting is not recommended. For example:

library A { 
    module B { 
        ... 
    }

    module C { 
        ...
        module D { 
            ...
            module E { 
                ...
            }
        }
    }
}