Optimizing Transformations of Dynamic Languages Compiled to Intermediate Representations
The result's identifiers
Result code in IS VaVaI
<a href="https://www.isvavai.cz/riv?ss=detail&h=RIV%2F00216208%3A11320%2F20%3A10416980" target="_blank" >RIV/00216208:11320/20:10416980 - isvavai.cz</a>
Result on the web
<a href="https://conferences.computer.org/tasepub/pdfs/TASE2020-5dIM65sOjiD1UBvCxlbFGt/408600a145/408600a145.pdf" target="_blank" >https://conferences.computer.org/tasepub/pdfs/TASE2020-5dIM65sOjiD1UBvCxlbFGt/408600a145/408600a145.pdf</a>
DOI - Digital Object Identifier
<a href="http://dx.doi.org/10.1109/TASE49443.2020.00028" target="_blank" >10.1109/TASE49443.2020.00028</a>
Alternative languages
Result language
angličtina
Original language name
Optimizing Transformations of Dynamic Languages Compiled to Intermediate Representations
Original language description
Compiling dynamic languages to stack-based intermediate representations used in platforms such as .NET and Java proved to be useful, mainly due to the enhanced interoperability and security. To produce the best intermediate code possible, current approaches perform a detailed flow-sensitive type analysis of the original code and utilize its results to choose the most efficient operations of the target platform. As known from the traditional compilers, the standard way to further increase program performance is using a set of transformations, which increase its efficiency while preserving its semantics. However, these transformations are not directly usable in the compilers of dynamic languages, because these operate on a higher level of abstraction; moreover, dynamic languages pose specific challenges, such as those stemming from weak typing. In this paper we propose a set of transformations which fit into the architecture of a dynamic language compiler, fitting well together with the type analysis. For evaluation purposes, we implemented them to Peachpie, a compiler of PHP to .NET. Applying the transformations during compilation of WordPress resulted in improvement of 0.6% in the generated assembly size, 1.8% in CPU time and 0.8% in memory consumption.
Czech name
—
Czech description
—
Classification
Type
D - Article in proceedings
CEP classification
—
OECD FORD branch
10201 - Computer sciences, information science, bioinformathics (hardware development to be 2.2, social aspect to be 5.8)
Result continuities
Project
—
Continuities
S - Specificky vyzkum na vysokych skolach<br>I - Institucionalni podpora na dlouhodoby koncepcni rozvoj vyzkumne organizace
Others
Publication year
2020
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
2020 International Symposium on Theoretical Aspects of Software Engineering
ISBN
978-1-72814-086-5
ISSN
—
e-ISSN
—
Number of pages
8
Pages from-to
145-152
Publisher name
The Institute of Electrical and Electronics Engineers, Inc.
Place of publication
Neuveden
Event location
Hangzhou
Event date
Dec 11, 2020
Type of event by nationality
WRD - Celosvětová akce
UT code for WoS article
—