Trace-based just-in-time type specialization for dynamic languages
By A. Gal, Brendan Eich, Mike Shaver, David Anderson, David Mandelin, M. Haghighat, Blake Kaplan, Graydon Hoare, B. Zbarsky, Jason Orendorff and 6 more. ACM-SIGPLAN Symposium on Programming Language Design and Implementation, 2009
379 citations recorded by the source corpus.
Subfields: Artificial Intelligence, Hardware and Architecture, Information Systems
View Paper: https://www.semanticscholar.org/paper/0d281938d3ff2377541704cab6ba1c4408420733
How researchers see this paper
The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.
In Artificial Intelligence
- Eli Ben-Sasson
- Eran Tromer
- Madars Virza
- Alessandro Chiesa
- Michael Riabzev
- Dan Boneh
- Iddo Bentov
- Michael Walfish
In Hardware and Architecture
- Eli Ben-Sasson
- Andrea C. Arpaci-Dusseau
- Remzi H. Arpaci-Dusseau
- Eran Tromer
- Madars Virza
- Alessandro Chiesa
- Aseem Rastogi
- Anders Møller
In Information Systems
- Eran Tromer
- Eli Ben-Sasson
- Madars Virza
- Alessandro Chiesa
- Andrea C. Arpaci-Dusseau
- Remzi H. Arpaci-Dusseau
- Jan Vitek
- Basil Hosmer
Citations in the corpus
- An analysis of the dynamic behavior of JavaScript programs (2010, methodology): “Trace-based Justin-time compilers such as TraceMonkey [10] rely on the traditional assumption that execution time is dominated by small loops.”
- Tracing the meta-level: PyPy's tracing JIT compiler (2009, methodology): “The technique is now being used by both Mozilla’s TraceMonkey JavaScript VM [16] and has been tried for Adobe’s Tamarin ActionScript VM [9].”
- The ins and outs of gradual type inference (2012, background): “In particular, it can do type specialization [10] for foo: i.”
- Succinct Non-Interactive Zero Knowledge for a von Neumann Architecture (2014, methodology): “Thus, we also support programs leveraging techniques such as just-in-time compilation or selfmodifying code [36, 58].”
- Serverless Computation with OpenLambda (2016, methodology): “JIT compilers have been built for Java [14], JavaScript [26], and Python [19] that optimize compiled code based on profiling or tracing of the code as it executes statically.”
- HHVM JIT: a profile-guided, region-based compiler for PHP and Hack (2018, methodology): “Not surprisingly, this is a basic principle used to compile many dynamic languages like SELF [8], JavaScript [18], Python [36], and PHP [42].”