Blogs (9) >>
SPLASH 2016
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

nool2016
15:40 - 17:20: NOOL - Delegation and Decoration at Luzern
Chair(s): Paley Li
nool2016147792480000015:40 - 16:15
Talk
Pre-print
nool2016147792690000016:15 - 16:50
Talk
Pre-print
nool2016147792900000016:50 - 17:25
Talk
Pre-print