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

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

15:40 - 17:20
Delegation and DecorationNOOL at Luzern
Chair(s): Paley Li Northeastern University
15:40
35m
Talk
Situated Objects
NOOL
Patrick Dubroy Y Combinator Research, USA
Pre-print
16:15
35m
Talk
Towards Automatic Decoration
NOOL
Tomoyuki Aotani Tokyo Institute of Technology, Tetsuo Kamina Ritsumeikan University
Pre-print
16:50
35m
Talk
Delegation Revisited
NOOL
Jonathan Aldrich Carnegie Mellon University, Alex Potanin Victoria University of Wellington
Pre-print