Blogs (9) >>
Sun 30 October - Fri 4 November 2016 Amsterdam, Netherlands
Mon 31 Oct 2016 16:15 - 16:50 at Luzern - Delegation and Decoration Chair(s): Paley Li

It is important from the view point of separation of concerns to separate optional features from core features of classes. The decorator pattern is a major technique to achieve this in single inheritance object-oriented programming languages such as Java. There are also more advanced techniques for modularity such as multiple inheritance, mixins, traits, incomplete objects and aspect-, feature- and delta-oriented programming. This direction is helpful for implementors of classes in the sense that it helps to avoid code duplication. It however makes the use of the classes complicated because one has to pick up and compose the modules that provides optional features with the modules that provides core features manually. We propose decorators as a solution to the problem. Decorators are a simple extension of mixins. One of the important differences of decorators from mixins is automatic composition: decorators are intended to be composed with classes automatically by infering the set of decorators from the use of objects, which we call decoration inference. This paper sketches and demonstrates decorators and decoration inference through simple and small examples. It also gives and discusses issues to realize decorators.

Mon 31 Oct

15:40 - 17:20: NOOL - Delegation and Decoration at Luzern
Chair(s): Paley LiNortheastern University
nool2016147792480000015:40 - 16:15
Patrick DubroyY Combinator Research, USA
nool2016147792690000016:15 - 16:50
Tomoyuki AotaniTokyo Institute of Technology, Tetsuo KaminaRitsumeikan University
nool2016147792900000016:50 - 17:25
Jonathan AldrichCarnegie Mellon University, Alex PotaninVictoria University of Wellington