HAL will be down for maintenance from Friday, June 10 at 4pm through Monday, June 13 at 9am. More information
Skip to Main content Skip to Navigation

Supporting Explicit Disambiguation of Multi-Methods

Eric Amiel Eric Dujardin 1
1 RODIN - Database Systems
Inria Paris-Rocquencourt
Abstract : Multiple inheritance and multiple dispatching are two sources of ambiguities in object-oriented languages. Solving ambiguities can be performed automatical- ly, using techniques such as totally ordering the supertypes of each type or taking the order of the methods' arguments into account. Such implicit disambiguation has the drawback of being difficult to understand by the programmer and hiding programming errors. Conversely, solving ambiguiti- es can be left up to the explicit intervention of the programmer. The most common explicit disambiguation technique consists in defining new methods for ambiguous invocations. However, finding ambiguities and adding as few methods as possible is a difficult task, especially in multi-method systems. In this paper, we show that there always exists a unique minimal set of method redefinitions to explicitly disambiguate a set of multi-methods. We propose an algorithm to compute the minimal disambiguation set, together with {\em ! explanations}: for each method that is to be added, the programmer is given the set of methods that caused the ambiguity.
Document type :
Complete list of metadata

Cited literature [20 references]  Display  Hide  Download

Contributor : Rapport de Recherche Inria Connect in order to contact the contributor
Submitted on : Wednesday, May 24, 2006 - 2:30:25 PM
Last modification on : Friday, February 4, 2022 - 3:10:19 AM
Long-term archiving on: : Monday, April 5, 2010 - 12:04:57 AM


  • HAL Id : inria-00074093, version 1



Eric Amiel, Eric Dujardin. Supporting Explicit Disambiguation of Multi-Methods. [Research Report] RR-2590, INRIA. 1995. ⟨inria-00074093⟩



Record views


Files downloads