Module (programming): Difference between revisions

Content deleted Content added
added Python to list of languages with modules
No edit summary
Line 6:
 
Differences between [[Class_(computer_science)|classes]] and modules are the following:
 
* Classes can be instantiated to create [[Object_(computer_science)|objects]],
* Classes can [[Inheritance_(object-oriented_programming)|inherit]] behavior and data from another class,
* [[Polymorphism_(computer_science)|Polymorphism]] allows relationships between class instances to change at run-time, while relations between modules are static.
 
Similarities between [[Class_(computer_science)|classes]] and modules are the following:
 
* Both can be used to hide abstraction from public view.
* Both can form a hierachie of modules/classs.
 
Languages that explicitly support the module concept include [[Ada programming language|Ada]], [[D_programming_language|D]], [[F programming language|F]], [[Fortran|Fortran]], [[Haskell_programming_language|Haskell]], [[ML_programming_language|ML]], [[Modula-2]], and [[Python_programming_language|Python]].
 
== Module Interconnection Languages (MILs) ==
 
'''Module Interconnection Languages (MILs)''' provide formal grammar constructs for deciding the various module interconnection specifications required to assemble a complete software system. MILs enable the separation between programming-in-the-small and programming-in-the-large. Coding a module represents programming in the small, while assembling a system with the help of a MIL represents programming in the large. An example of MIL is MIL-75.
 
== See also ==
 
* [[Wikibooks:Programming:Ada: Programming/Packages]] - How modules are implemented in [[Ada programming language|Ada]].
 
== External links ==
 
* [http://modules.sourceforge.net/ Environment Modules]