Module System

What makes a good module system?

What is a module?

In some ObjectOrientedProgrammingLanguages a module is a file that holds a bunch of classes, to make it easy to transfer classes between different systems.

Many ProgrammingLanguages allow the breakdown of a software system (or the bundling of single types and procedures) into packages where the contents of a package share a namespace and can be selectively exported to and imported from other packages.


See LucaCardelli's paper "Program fragments, linking, and modularization", available from http://www.luca.demon.co.uk/Bibliography.htm.


The MlLanguage defines an advanced module system that allows modules to be parametrized with other modules (ParametricModules?, called functors). Also see XavierLeroy?'s paper "A ModularModuleSystem".


See http://library.readscheme.org/page5.html for an online bibliography of (somewhat SchemeLanguage-specific) papers about modules and ComponentOrientedProgramming. See http://readscheme.org/modules/ for a mini-bibliography of research papers related to ModuleSystems for FunctionalProgrammingLanguages.


Also see ComponentDefinition, ModularProgramming


CategoryLanguageFeature


EditText of this page (last edited December 18, 2004) or FindPage with title or text search