Ergebnis für URL: http://www.gnu.org/software/guile/manual/html_node/Modules.html #[1]Top [2]Concept Index [3]Table of Contents [4]API Reference [5]Foreign
Function Interface [6]Memory Management
Next: [7]Foreign Function Interface, Previous: [8]Memory Management and Garbage
Collection, Up: [9]API Reference [[10]Contents][[11]Index]
____________________________________________________________________________
6.18 Modules
When programs become large, naming conflicts can occur when a function or global
variable defined in one file has the same name as a function or global variable
in another file. Even just a similarity between function names can cause
hard-to-find bugs, since a programmer might type the wrong function name.
The approach used to tackle this problem is called information encapsulation,
which consists of packaging functional units into a given name space that is
clearly separated from other name spaces.
The language features that allow this are usually called the module system
because programs are broken up into modules that are compiled separately (or
loaded separately in an interpreter).
Older languages, like C, have limited support for name space manipulation and
protection. In C a variable or function is public by default, and can be made
local to a module with the static keyword. But you cannot reference public
variables and functions from another module with different names.
More advanced module systems have become a common feature in recently designed
languages: ML, Python, Perl, and Modula 3 all allow the renaming of objects from
a foreign module, so they will not clutter the global name space.
In addition, Guile offers variables as first-class objects. They can be used for
interacting with the module system.
* [12]General Information about Modules
* [13]Using Guile Modules
* [14]Creating Guile Modules
* [15]Modules and the File System
* [16]R6RS Version References
* [17]R6RS Libraries
* [18]Variables
* [19]Module System Reflection
* [20]Declarative Modules
* [21]Accessing Modules from C
* [22]provide and require
* [23]Environments
____________________________________________________________________________
Next: [24]Foreign Function Interface, Previous: [25]Memory Management and Garbage
Collection, Up: [26]API Reference [[27]Contents][[28]Index]
References
1. http://www.gnu.org/software/guile/manual/html_node/index.html
2. http://www.gnu.org/software/guile/manual/html_node/Concept-Index.html
3. http://www.gnu.org/software/guile/manual/html_node/index.html#SEC_Contents
4. http://www.gnu.org/software/guile/manual/html_node/API-Reference.html
5. http://www.gnu.org/software/guile/manual/html_node/Foreign-Function-Interface.html
6. http://www.gnu.org/software/guile/manual/html_node/Memory-Management.html
7. http://www.gnu.org/software/guile/manual/html_node/Foreign-Function-Interface.html
8. http://www.gnu.org/software/guile/manual/html_node/Memory-Management.html
9. http://www.gnu.org/software/guile/manual/html_node/API-Reference.html
10. http://www.gnu.org/software/guile/manual/html_node/index.html#SEC_Contents
11. http://www.gnu.org/software/guile/manual/html_node/Concept-Index.html
12. http://www.gnu.org/software/guile/manual/html_node/General-Information-about-Modules.html
13. http://www.gnu.org/software/guile/manual/html_node/Using-Guile-Modules.html
14. http://www.gnu.org/software/guile/manual/html_node/Creating-Guile-Modules.html
15. http://www.gnu.org/software/guile/manual/html_node/Modules-and-the-File-System.html
16. http://www.gnu.org/software/guile/manual/html_node/R6RS-Version-References.html
17. http://www.gnu.org/software/guile/manual/html_node/R6RS-Libraries.html
18. http://www.gnu.org/software/guile/manual/html_node/Variables.html
19. http://www.gnu.org/software/guile/manual/html_node/Module-System-Reflection.html
20. http://www.gnu.org/software/guile/manual/html_node/Declarative-Modules.html
21. http://www.gnu.org/software/guile/manual/html_node/Accessing-Modules-from-C.html
22. http://www.gnu.org/software/guile/manual/html_node/provide-and-require.html
23. http://www.gnu.org/software/guile/manual/html_node/Environments.html
24. http://www.gnu.org/software/guile/manual/html_node/Foreign-Function-Interface.html
25. http://www.gnu.org/software/guile/manual/html_node/Memory-Management.html
26. http://www.gnu.org/software/guile/manual/html_node/API-Reference.html
27. http://www.gnu.org/software/guile/manual/html_node/index.html#SEC_Contents
28. http://www.gnu.org/software/guile/manual/html_node/Concept-Index.html
Usage: http://www.kk-software.de/kklynxview/get/URL
e.g. http://www.kk-software.de/kklynxview/get/http://www.kk-software.de
Errormessages are in German, sorry ;-)