Scheme 48 Manual | Contents | In Chapter: Module system
Previous: Macros | Next: Compiling and linking

## Higher-order modules

There are `define-module` and `define` forms for defining modules that are intended to be instantiated multiple times. But these are pretty kludgey -- for example, compiled code isn't shared between the instantiations -- so we won't describe them yet. If you must know, figure it out from the following grammar.

<definition> | `->` `(d` | `efine-module (<name> (<name> <interface>)*)`
|  | <definition>*
|  | <name>`)`
| `->` `(define <name> (<name> <name>*))`

Previous: Macros | Next: Compiling and linking