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

How should code reuse be supported in a statically-typed, expression-oriented programming language? Neither function-based reuse nor class-based inheritance provides a good solution in this setting. We question the requirements for code reuse, proposing that future work evaluate whether open recursion is really needed to support cases commonly seen in industry. In addition, we explore the design space of forwarding and delegation mechanisms, finding that there are solutions that are surprisingly expressive despite their simplicity.

Function-based reuse works well at the small scale, but at the medium scale we would like to compose groups of functions and perhaps state (i.e. objects). Statically-typed inheritance-based reuse works with classes as top-level declarations, but this choice is incompatible with an expression-oriented language design. First-class classes restore expression orientation, but make static typing complex.

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