Powered by
16th ACM International Workshop on Implementation, Compilation, Optimization of OO Languages, Programs and Systems (ICOOOLPS 2021),
July 13, 2021,
Virtual, Denmark
16th ACM International Workshop on Implementation, Compilation, Optimization of OO Languages, Programs and Systems (ICOOOLPS 2021)
Frontmatter
Message from the Chairs
16th Workshop on Implementation, Compilation, Optimization of Object- Oriented Languages, Programs and Systems
The ICOOOLPS workshop series brings together researchers and practitioners working in the field of language implementation and optimization. The goal of the workshop is to discuss emerging problems and research directions, as well as new solutions and techniques.
Info
Paper
Naïve Transient Cast Insertion Isn't (That) Bad
Erin Greenwood-Thessman,
Isaac Oscar Gariano,
Richard Roberts,
Stefan Marr,
Michael Homer, and
James Noble
(Victoria University of Wellington, New Zealand; University of Kent, UK)
Transient gradual type systems often depend on type-based cast insertion to achieve good performance: casts are inserted whenever the static checker detects that a dynamically-typed value may flow into a statically-typed context. Transient gradually typed programs are then often executed using just-in-time compilation, and contemporary just-in-time compilers are very good at removing redundant computations.
In this paper we present work-in-progress to measure the ability of just-in-time compilers to remove redundant type checks. We investigate worst-case performance and so take a na'ıve approach, annotating every subexpression to insert every plausible dynamic cast. Our results indicate that the Moth VM still manages to eliminate much of the overhead, by relying on the state-of-the-art SOMns substrate and Graal just-in-time compiler.
We hope these results will help language implementers evaluate the tradeoffs between dynamic optimisations (which can improve the performance of both statically and dynamically typed programs) and static optimisations (which improve only statically typed code).
@InProceedings{ICOOOLPS21p1,
author = {Erin Greenwood-Thessman and Isaac Oscar Gariano and Richard Roberts and Stefan Marr and Michael Homer and James Noble},
title = {Naïve Transient Cast Insertion Isn't (That) Bad},
booktitle = {Proc.\ ICOOOLPS},
publisher = {ACM},
pages = {1--9},
doi = {10.1145/3464972.3472395},
year = {2021},
}
Publisher's Version
proc time: 0.38