Towards a Full Multiple-Inheritance Virtual Machine - LIRMM - Laboratoire d’Informatique, de Robotique et de Microélectronique de Montpellier
Journal Articles The Journal of Object Technology Year : 2012

Towards a Full Multiple-Inheritance Virtual Machine

Abstract

Late binding and subtyping create runtime overhead for object-oriented languages, especially in the context of both multiple inheritance and dynamic loading. Recent experiments show that this overhead is marked with static, non-adaptive compilers, which work under the \emph{open-world assumption}. Therefore, dynamic, ie adaptive, compilation might present a solution to this efficiency issue. This paper presents the abstract architecture of a virtual machine and a dynamic compiler for unrestricted multiple-inheritance. This architecture involves an object representation that allows for shortcuts in the default implementations, coupled with compilation/recompilation protocols that maintain the most efficient implementations compatible with the current state of the program. The object representation proposed is based on perfect class hashing, which shortcuts to static calls or the single-subtyping implementation. Moreover, this article proposes a new methodology, based on random simulation, for evaluating the runtime efficiency and recompilation cost of the proposed protocols. The resulting experiments show that the architecture proposed should provide the same runtime efficiency as Java and .NET, thus offsetting most of the multiple-inheritance overhead.
Fichier principal
Vignette du fichier
article6.pdf (922.32 Ko) Télécharger le fichier
Origin Publisher files allowed on an open archive
Licence

Dates and versions

lirmm-00659592 , version 1 (27-06-2023)

Licence

Identifiers

Cite

Roland Ducournau, Floréal Morandat. Towards a Full Multiple-Inheritance Virtual Machine. The Journal of Object Technology, 2012, 11 (3), pp.1-29. ⟨10.5381/jot.2012.11.3.a6⟩. ⟨lirmm-00659592⟩
121 View
31 Download

Altmetric

Share

More