Loading...
Please wait, while we are loading the content...
Similar Documents
To be destructive or not to be, that is the question on modular extensions
| Content Provider | ACM Digital Library |
|---|---|
| Author | Chiba, Shigeru |
| Abstract | Inheritance is a classic mechanism for extending an existing module. Since it preserves the original module, programmers can use both the original module and the extended one in the same program. So inheritance is a non-destructive mechanism. On the other hand, there are some extension mechanisms that directly modify an existing module and thus only the extended module is available in a program. These mechanisms such as aspects in AspectJ and revisers in our language GluonJ should be categorized into destructive mechanisms. Both destructive extension mechanisms and non-destructive ones are useful but in different scenarios. This talk presents that the primary difference between destructive mechanisms and non-destructive ones is the scope of where the extensions are effective and visible in a program. Then this talk shows the third approach in the middle between the two extreme ones, destructive and non-destructive. The third approach allows programmers to control the scope of the extensions in a modular fashion. The talk presents a few language mechanisms of this approach, including our method shells, and also remaining issues in the contexts of feature-oriented programming. |
| Starting Page | 1 |
| Ending Page | 2 |
| Page Count | 2 |
| File Format | |
| ISBN | 9781450327985 |
| DOI | 10.1145/2588548.2588554 |
| Language | English |
| Publisher | Association for Computing Machinery (ACM) |
| Publisher Date | 2014-04-22 |
| Publisher Place | New York |
| Access Restriction | Subscribed |
| Subject Keyword | Extension Modularization |
| Content Type | Text |
| Resource Type | Article |