| [ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
28.6 Library and modules
A Bigloo library may be composed of several Bigloo modules (even if in
our example only one module was used). The modules composing the library
are free to import each other. Nevertheless, someone designing a Bigloo
library should be aware that Bigloo importation creates dependences
between modules. A module mod1 that imports a module mod2
depends on mod2 because mod1 requires mod2 to be
initialized (i.e. mod1 calls to the initialization function of
mod2). The result is that using import clauses inside
modules composing a library may create a lot of dependencies between the
object files that are used to build the associated Unix
library. Dependencies should be avoided because they make the Unix
linkers unable to produce small stand-alone programs. Instead of
import clauses, use clauses should be
preferred. Use clauses do not create dependencies because a
module mod1 that uses a second module mod2 does not
require mod2 to be initialized. Of course, it may happen
situations where the initialization is mandatory and thus, the
import must not be replaced with a use clause. The source
code of the Bigloo library makes use of import and use
clauses. The Bigloo standard library should be studied as an example.
| [ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This document was generated on October 23, 2011 using texi2html 5.0.
