Super and Inner — Together at Last! by David S. Goldberg, Robert Bruce Findler, and Matthew Flatt, 2004.
In an object-oriented language, a derived class may declare a
method with the same signature as a method in the base class.
The meaning of the re-declaration depends on the language. Most
commonly, the new declaration overrides the base declaration, perhaps
completely replacing it, or perhaps using super to invoke the
old implementation. Another possibility is that the base class always
controls the method implementation, and the new declaration
merely augments the method in the case that the base method calls
inner. Each possibility has advantages and disadvantages. In this
paper, we explain why programmers need both kinds of method redeclaration,
and we present a language that integrates them. We
also present a formal semantics for the new language, and we describe
an implementation for MzScheme.
To me, an interesting aspect was interleaving of overrides and augmentations of the same method.
Recent comments
23 weeks 1 day ago
23 weeks 1 day ago
23 weeks 1 day ago
45 weeks 3 days ago
49 weeks 5 days ago
51 weeks 2 days ago
51 weeks 2 days ago
1 year 1 week ago
1 year 6 weeks ago
1 year 6 weeks ago