Magic with Dynamo -- Flexible Cross-Component Linking for Java with Invokedynamic
The result's identifiers
Result code in IS VaVaI
<a href="https://www.isvavai.cz/riv?ss=detail&h=RIV%2F49777513%3A23520%2F16%3A43928996" target="_blank" >RIV/49777513:23520/16:43928996 - isvavai.cz</a>
Result on the web
<a href="http://dx.doi.org/10.4230/LIPIcs.ECOOP.2016.12" target="_blank" >http://dx.doi.org/10.4230/LIPIcs.ECOOP.2016.12</a>
DOI - Digital Object Identifier
<a href="http://dx.doi.org/10.4230/LIPIcs.ECOOP.2016.12" target="_blank" >10.4230/LIPIcs.ECOOP.2016.12</a>
Alternative languages
Result language
angličtina
Original language name
Magic with Dynamo -- Flexible Cross-Component Linking for Java with Invokedynamic
Original language description
Modern software systems are not built from scratch. They use functionality provided by libraries. These libraries evolve and often upgrades are deployed without the systems being recompiled. In Java, this process is particularly error-prone due to the mismatch between source and binary compatibility, and the lack of API stability in many popular libraries. We propose a novel approach to mitigate this problem based on the use of invokedynamic instructions for cross-component method invocations. The dispatch mechanism of invokedynamic is used to provide on-the-fly signature adaptation. We show how this idea can be used to construct a Java compiler that produces more resilient bytecode. We present the dynamo compiler, a proof-of-concept implemented as a javac post compiler. We evaluate our approach using several benchmark examples and two case studies showing how the dynamo compiler can prevent certain types of linkage and stack overflow errors that have been observed in real-world systems.
Czech name
—
Czech description
—
Classification
Type
D - Article in proceedings
CEP classification
IN - Informatics
OECD FORD branch
—
Result continuities
Project
<a href="/en/project/ED1.1.00%2F02.0090" target="_blank" >ED1.1.00/02.0090: NTIS - New Technologies for Information Society</a><br>
Continuities
P - Projekt vyzkumu a vyvoje financovany z verejnych zdroju (s odkazem do CEP)
Others
Publication year
2016
Confidentiality
S - Úplné a pravdivé údaje o projektu nepodléhají ochraně podle zvláštních právních předpisů
Data specific for result type
Article name in the collection
30th European Conference on Object-Oriented Programming (ECOOP 2016)
ISBN
978-3-95977-014-9
ISSN
1868-8969
e-ISSN
—
Number of pages
25
Pages from-to
1-25
Publisher name
Schloss Dagstuhl
Place of publication
Schloss Dagstuhl-Leibniz-Zentrum für Informatik
Event location
Řím
Event date
Jul 18, 2016
Type of event by nationality
WRD - Celosvětová akce
UT code for WoS article
—