Classboxes: A Minimal Module Model Supporting Local Rebinding
- Cite this paper as:
- Bergel A., Ducasse S., Wuyts R. (2003) Classboxes: A Minimal Module Model Supporting Local Rebinding. In: Böszörményi L., Schojer P. (eds) Modular Programming Languages. JMLC 2003. Lecture Notes in Computer Science, vol 2789. Springer, Berlin, Heidelberg
Classical module systems support well the modular development of applications but do not offer the ability to add or replace a method in a class that is not defined in that module. On the other hand, languages that support method addition and replacement do not provide a modular view of applications, and their changes have a global impact. The result is a gap between module systems for object-oriented languages on one hand, and the very desirable feature of method addition and replacement on the other hand. To solve these problems we present classboxes, a module system for object-oriented languages that provides method addition and replacement. Moreover, the changes made by a classbox are only visible to that classbox (or classboxes that import it), a feature we call local rebinding. To validate the model, we have implemented it in the Squeak Smalltalk environment, and performed experiments modularising code.
Keywordslanguage design method lookup modules smalltalk class extension selector namespace
Unable to display preview. Download preview PDF.