Lecture Notes in Computer Science, 2003, Volume 2789/2003, 122-131, DOI: 10.1007/978-3-540-45213-3_17

Classboxes: A Minimal Module Model Supporting Local Rebinding

Alexandre Bergel, Stéphane Ducasse and Roel Wuyts

View Related Documents

Abstract

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.

Keywords  language design - method lookup - modules - smalltalk - class extension - selector namespace

Fulltext Preview

Image of the first page of the fulltext document