Write a Blog >>
Sun 20 - Fri 25 October 2019 Athens, Greece
Sun 20 Oct 2019 10:00 - 10:30 at Room 1A - Model and Theory Chair(s): Guido Chari

Multi-methods are a straightforward extension of traditional (single) dynamic dispatch, which is the core of most object oriented languages. With multi methods, a method call will select an appropriate implementation based on the values of multiple arguments, and not just the first/receiver. Language support for both single and multiple dispatch is typically designed to be used in conjunction with other object oriented features, in particular classes and inheritance. But are these extra features really necessary?

Mμl is a dynamic language designed to be as simple as possible but still supporting flexible abstraction and polymorphism. Mμl provides only two forms of abstraction: (object) identities and (multi) methods. In Mμl method calls are dispatched based on the identity of arguments, as well as whether other method-calls would successfully dispatch. In order to keep Mμls design simple, when multiple method definitions are applicable, the most recently defined one is chosen, not the most specific (as is conventional with dynamic dispatch).

In this paper we show how by defining methods at runtime, we obtain much of the power of classes and meta object protocols, in particular, the ability to dynamically modify the state and behaviour of ‘classes’ of objects.

Sun 20 Oct

Displayed time zone: Beirut change

09:00 - 10:30
Model and TheoryMETA at Room 1A
Chair(s): Guido Chari Czech Technical University
Ambiguous, Informal, and Unsound: Metaprogramming for Naturalness
Toni Mattis Hasso Plattner Institute, University of Potsdam, Patrick Rein Hasso Plattner Institute, Germany, Robert Hirschfeld Hasso-Plattner-Institut (HPI), Germany
From Definitional Interpreter To Symbolic Executor
Adrian Mensing , Hendrik van Antwerpen TU Delft, Eelco Visser Delft University of Technology, Casper Bach Poulsen Delft University of Technology
Link to publication Pre-print
Mμl: The Power of Dynamic Multi-Methods
Isaac Oscar Gariano Victoria University of Wellington, Marco Servetto Victoria University Wellington, New Zealand
File Attached