Analyzing Module Diversity

Alexandre Bergel 1 Stéphane Ducasse 2 Oscar Nierstrasz 1
2 RMOD - Analyses and Languages Constructs for Object-Oriented Application Evolution
Inria Lille - Nord Europe, CRIStAL - Centre de Recherche en Informatique, Signal et Automatique de Lille (CRIStAL) - UMR 9189
Abstract : Each object-oriented programming language proposes various grouping mechanisms to bundle interacting classes (i.e., packages, modules, selector namespaces, etc). To understand this diversity and to compare the different approaches, a common foundation is needed. In this paper we present a simple module calculus consisting of a small set of operators over environments and modules. Using these operators, we are then able to specify a set of module combinators that capture the semantics of Java packages, C# namespaces, Ruby modules, selector namespaces, gbeta classes, classboxes, MZScheme units, and MixJuice modules. We develop a simple taxonomy of module systems, and show how particular combinations of module operators help us to draw sharp distinctions between classes of module systems that share similar characteristics.
Document type :
Journal articles
Complete list of metadatas

Cited literature [38 references]  Display  Hide  Download

https://hal.inria.fr/hal-01352809
Contributor : Lse Lse <>
Submitted on : Tuesday, August 9, 2016 - 6:00:40 PM
Last modification on : Friday, March 22, 2019 - 1:35:51 AM
Long-term archiving on: Thursday, November 10, 2016 - 10:30:43 AM

File

jucs_11_10_1613_1644_bergel.pd...
Files produced by the author(s)

Identifiers

Collections

Citation

Alexandre Bergel, Stéphane Ducasse, Oscar Nierstrasz. Analyzing Module Diversity. Journal of Universal Computer Science, Graz University of Technology, Institut für Informationssysteme und Computer Medien, 2005, 11 (10), pp.32. ⟨10.3217/jucs-011-10-1613⟩. ⟨hal-01352809⟩

Share

Metrics

Record views

214

Files downloads

79