doc: Add definition of modules
This commit is contained in:
parent
c8f0b26577
commit
6141c8499d
1 changed files with 18 additions and 0 deletions
|
@ -1,2 +1,20 @@
|
||||||
# Modules {#sec:modules}
|
# Modules {#sec:modules}
|
||||||
|
|
||||||
|
A module is a functionality of the program.
|
||||||
|
|
||||||
|
A module MAY store data in the store (@sec:thestore).
|
||||||
|
It MAY include user input in the data it stores in the store.
|
||||||
|
A module MUST HAVE a commandline interface, though a module always consists of
|
||||||
|
two parts:
|
||||||
|
|
||||||
|
- A Library
|
||||||
|
- A Binary, which
|
||||||
|
* is executable by the user
|
||||||
|
* implements a commandline frontend to the libray of the module
|
||||||
|
|
||||||
|
By definition, the Binary depends on the Library.
|
||||||
|
By definition, the Library depends on the libstore (@sec:libstore).
|
||||||
|
|
||||||
|
A module MUST use the runtime library to implement the commandline
|
||||||
|
interface as defined in @sec:librt.
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue