Fine-grained and accurate source code differencing

JR Falleri, F Morandat, X Blanc, M Martinez… - Proceedings of the 29th …, 2014 - dl.acm.org
At the heart of software evolution is a sequence of edit actions, called an edit script, made to
a source code file. Since software systems are stored version by version, the edit script has …

Julia: Dynamism and performance reconciled by design

J Bezanson, J Chen, B Chung, S Karpinski… - Proceedings of the …, 2018 - dl.acm.org
Julia is a programming language for the scientific community that combines features of
productivity languages, such as Python or MATLAB, with characteristics of performance …

A fast in-place interpreter for WebAssembly

BL Titzer - Proceedings of the ACM on Programming Languages, 2022 - dl.acm.org
WebAssembly (Wasm) is a compact, well-specified bytecode format that offers a portable
compilation target with near-native execution speed. The bytecode format was specifically …

A language designer's workbench: a one-stop-shop for implementation and verification of language designs

E Visser, G Wachsmuth, A Tolmach, P Neron… - Proceedings of the …, 2014 - dl.acm.org
The realization of a language design requires multiple artifacts that redundantly encode the
same information. This entails significant effort for language implementors, and often results …

Optimizing R language execution via aggressive speculation

L Stadler, A Welc, C Humer, M Jordan - ACM Sigplan Notices, 2016 - dl.acm.org
The R language, from the point of view of language design and implementation, is a unique
combination of various programming language concepts. It has functional characteristics like …

Just-in-time GPU compilation for interpreted languages with partial evaluation

J Fumero, M Steuwer, L Stadler, C Dubach - Proceedings of the 13th …, 2017 - dl.acm.org
Computer systems are increasingly featuring powerful parallel devices with the advent of
many-core CPUs and GPUs. This offers the opportunity to solve computationally-intensive …

Tracing vs. partial evaluation: Comparing meta-compilation approaches for self-optimizing interpreters

S Marr, S Ducasse - Proceedings of the 2015 ACM SIGPLAN …, 2015 - dl.acm.org
Tracing and partial evaluation have been proposed as meta-compilation techniques for
interpreters to make just-in-time compilation language-independent. They promise that …

Contextual dispatch for function specialization

O Flückiger, G Chari, MH Yee, J Ječmen… - Proceedings of the …, 2020 - dl.acm.org
In order to generate efficient code, dynamic language compilers often need information,
such as dynamic types, not readily available in the program source. Leveraging a mixture of …

AST vs. bytecode: interpreters in the age of meta-compilation

O Larose, S Kaleba, H Burchell, S Marr - Proceedings of the ACM on …, 2023 - dl.acm.org
Thanks to partial evaluation and meta-tracing, it became practical to build language
implementations that reach state-of-the-art peak performance by implementing only an …

Compiling with Continuations, or without? Whatever.

Y Cong, L Osvald, GM Essertel, T Rompf - Proceedings of the ACM on …, 2019 - dl.acm.org
What makes a good compiler IR? In the context of functional languages, there has been an
extensive debate on the advantages and disadvantages of continuation-passing-style …