Abstract
We introduce straf, a Scala framework for recording and optimizing execution traces of an interpreter it is composed with. For interpreters that satisfy the requirements detailed in this paper, this composition requires but a small effort from the implementer to result in a trace-based JIT compiler. We describe the framework, and illustrate its composition with a Scheme interpreter that satisfies the aforementioned requirements. We benchmark the resulting trace-based JIT compiler on a set of Scheme programs. Finally, we implement an optimization to demonstrate that straf enables further experimentation in the domain.
Translated title of the contribution | STRAF: Een Scala Framework voor Experimentatie in Trace-Based JIT Compilatie |
---|---|
Original language | English |
Title of host publication | Grand Timely Topics in Software Engineering - International Summer School GTTSE 2015, Tutorial Lectures |
Editors | Jacome Cunha, Vadim Zaytsev, Ralf Lammel, Joao Saraiva, Joao P. Fernandes |
Pages | 223-234 |
Number of pages | 12 |
ISBN (Electronic) | 978-3-319-60074-1 |
DOIs | |
Publication status | Published - 29 Jun 2017 |
Event | GTTSE 2015 Summer School: Grand Timely Topics in Software Engineering - Braga, Portugal Duration: 23 Aug 2015 → 29 Aug 2015 http://gttse.wikidot.com/ |
Publication series
Name | Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) |
---|---|
Volume | 10223 LNCS |
ISSN (Print) | 0302-9743 |
ISSN (Electronic) | 1611-3349 |
Other
Other | GTTSE 2015 Summer School |
---|---|
Country/Territory | Portugal |
City | Braga |
Period | 23/08/15 → 29/08/15 |
Internet address |
Keywords
- Execution traces
- JIT compilation
- Scala
- Tracing compilation