ECOOP 2018
Sun 15 - Sat 21 July 2018 Amsterdam, Netherlands
co-located with ECOOP and ISSTA
Fri 20 Jul 2018 16:00 - 16:25 at Zurich II - Formal Calculi Chair(s): Atsushi Igarashi

Multiple inheritance is a valuable feature for Object-Oriented Programming. However, it is also tricky to get right, as illustrated by the extensive literature on the topic. A key issue is the ambiguity arising from inheriting multiple parents, which can have conflicting methods. Numerous existing work provides solutions for conflicts which arise from diamond inheritance: i.e. conflicts that arise from implementations sharing a common ancestor. However, most mechanisms are inadequate to deal with unintentional method conflicts: conflicts which arise from two unrelated methods that happen to share the same name and signature. This paper presents a new model called Featherweight Hierarchical Java (FHJ) that deals with unintentional method conflicts. In our new model, which is partly inspired by C++, conflicting methods arising from unrelated methods can coexist in the same class, and hierarchical dispatching supports unambiguous lookups in the presence of such conflicting methods. To avoid ambiguity, hierarchical information is employed in method dispatching, which uses a combination of static and dynamic type information to choose the implementation of a method at run-time. Furthermore, unlike all existing inheritance models, our model supports hierarchical method overriding: that is, methods can be independently overridden along the multiple inheritance hierarchy. We give illustrative examples of our language and features and formalize FHJ as a minimal Featherweight-Java style calculus.

Fri 20 Jul

16:00 - 17:15: ECOOP Research Papers - Formal Calculi at Zurich II
Chair(s): Atsushi IgarashiKyoto University, Japan
ecoop-2018-papers16:00 - 16:25
Research paper
Yanlin WangUniversity of Hong Kong, Haoyuan Zhang, Bruno C. d. S. OliveiraUniversity of Hong Kong, China, Marco ServettoVictoria University of Wellington
ecoop-2018-papers16:25 - 16:50
Research paper
Davide AnconaUniversity of Genova, Francesco DagninoDIBRIS, University of Genova, Italy, Elena ZuccaUniversity of Genova
ecoop-2018-papers16:50 - 17:15
Research paper
Xuan BiThe University of Hong Kong, Bruno C. d. S. OliveiraUniversity of Hong Kong, China, Tom SchrijversKU Leuven