The Official FVWM Homepage - Concept
The module interface has several design goals:
- Modules are used to implement "extra" or "elaborate" features so
that the additional resources these features take don't affect users that
don't want to sacrifice the resources.
- Modules (user programs) should be able to provide the window
manager with a limited amount of instruction regarding instructions to
execute.
- Modules should not be able to corrupt the internal data bases
maintained by Fvwm, nor should unauthorized modules be able to
interface to Fvwm.
- Modules should be able to extract all or nearly all information
held by the window manager, in a simple manner, to provide users with
feedback not available from built in services.
- Modules should gracefully terminate when the window manager
dies, quits, or is re-started.
- It should be possible for programmer-users to add modules
without understanding the internals of Fvwm. Ideally, modules could be
written in some scripting language such as Tcl/Tk.