Format:
Online-Ressource (PDF-Datei: 1.599 KB, 163 S.)
,
graph. Darst.
Series Statement:
Technische Berichte des Hasso-Plattner-Instituts für Softwaresystemtechnik an der Universität Potsdam 82
Content:
There are two common approaches to implement a virtual machine (VM) for a dynamic object-oriented language. On the one hand, it can be implemented in a C-like language for best performance and maximum control over the resulting executable. On the other hand, it can be implemented in a language such as Java that allows for higher-level abstractions. These abstractions, such as proper object-oriented modularization, automatic memory management, or interfaces, are missing in C-like languages but they can simplify the implementation of prevalent but complex concepts in VMs, such as garbage collectors (GCs) or just-in-time compilers (JITs). Yet, the implementation of a dynamic object-oriented language in Java eventually results in two VMs on top of each other (double stack), which impedes performance. For statically typed languages, the Maxine VM solves this problem; it is written in Java but can be executed without a Java virtual machine (JVM). However, it is currently not possible to execute dynamic object-oriented languages in Maxine. This work presents an approach to bringing object models and execution models of dynamic object-oriented languages to the Maxine VM and the application of this approach to Squeak/Smalltalk. The representation of objects in and the execution of dynamic object-oriented languages pose certain challenges to the Maxine VM that lacks certain variation points necessary to enable an effortless and straightforward implementation of dynamic object-oriented languages' execution models. The implementation of Squeak/Smalltalk in Maxine as a feasibility study is to unveil such missing variation points.
Additional Edition:
ISBN 9783869562667
Additional Edition:
Druckausg. Pape, Tobias Extending a Java virtual machine to dynamic object-oriented languages Potsdam : Univ.-Verl., 2013 ISBN 9783869562667
Language:
English
Keywords:
Java Virtual Machine
;
Objektorientierte Programmiersprache
;
Dynamische Optimierung
;
Java Virtual Machine
;
Objektorientierte Programmiersprache
;
Forschungsbericht
URN:
urn:nbn:de:kobv:517-opus-67438
Author information:
Haupt, Michael 1975-
Author information:
Hirschfeld, Robert 1969-
Bookmarklink