Presentations and Conference Talks
2022

Deoptless: Speculation with Dispatched On-Stack Replacement and Specialized Continuations.
Olivier Flückiger, Jan Ječmen, Sebastián Krynski, Jan Vitek.
In ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI'22).

2021

Last-use Opacity: A Strong Safety Property for Transactional Memory with Prerelease Support.
Konrad Siek, Paweł T. Wojciechowski.
In Distributed Computing (DIST).

acm_artifact_available
acm_artifact_evaluated_functional
acm_artifact_evaluated_reusable
Type Stability in Julia: Avoiding Performance Pathologies in JIT Compilation.
Artem Pelenitsyn, Julia Belyakova, Benjamin Chung, Ross Tate, Jan Vitek.
In Proc. ACM SIGPLAN Conference on Systems, Programming, Languages, and Applications: Software for Humanity (OOPSLA'21).

acm_artifact_available
acm_artifact_evaluated_functional
acm_artifact_evaluated_reusable
Promises Are Made To Be Broken: Migrating R to Strict Semantics.
Aviral Goel, Jan Ječmen, Sebastián Krynski, Olivier Flückiger, Jan Vitek.
In Proc. ACM SIGPLAN Conference on Systems, Programming, Languages, and Applications: Software for Humanity (OOPSLA'21).

acm_artifact_available
acm_artifact_evaluated_functional
acm_artifact_evaluated_reusable
What We Eval in the Shadows.
Aviral Goel, Pierre Donat-Bouillud, Filip Křikava, Christoph Kirsch, Jan Vitek.
In Proc. ACM SIGPLAN Conference on Systems, Programming, Languages, and Applications: Software for Humanity (OOPSLA'21).

First-Class Environments in R.
Aviral Goel, Jan Vitek.
In Dynamic Languages Symposium (DLS'21).

ASE: A Value Set Decision Procedure for Symbolic Execution.
A.S. Abyaneh, C.M. Kirsch.
In Proc. IEEE/ACM International Conference on Automated Software Engineering (ASE'21).

acm_artifact_available
acm_artifact_evaluated_functional
acm_artifact_evaluated_reusable
CodeDJ: Reproducible Queries over Large-Scale Software Repositories.
Petr Maj, Konrad Siek, Alexander Kovalenko, Jan Vitek.
In European Conference on Object-Oriented Programming (ECOOP'21).

Formally Verified Speculation and Deoptimization in a JIT Compiler.
Aurèle Barrière, Sandrine Blazy, Olivier Flückiger, David Pichardie, Jan Vitek.
In Principles of Programming Languages (POPL'21).

2020

acm_artifact_available
acm_artifact_evaluated_functional
Contextual Dispatch for Function Specialization.
Olivier Flückiger, Guido Chari, Ming-Ho Yee, Jan Jecmen, Jakob Hain, Jan Vitek.
In Object-Oriented Programming, Systems, Languages & Applications (OOPSLA'20).

acm_artifact_available
Sampling Optimized Code for Type Feedback.
Olivier Flückiger, Andreas Wälchli, Sebastián Krynski, Jan Vitek.
In Dynamic Languages Symposium (DLS'20).

acm_artifact_available
acm_artifact_evaluated_functional
acm_artifact_evaluated_reusable
World Age in Julia: Optimizing Method Dispatch in the Presence of Eval.
Julia Belyakova, Benjamin Chung, Jack Gelinas, Jameson Nash, Ross Tate, Jan Vitek.
In Object-Oriented Programming, Systems, Languages & Applications (OOPSLA'20).

acm_artifact_available
acm_artifact_evaluated_functional
acm_artifact_evaluated_reusable
Designing Types for R, Empirically.
Alexi Turcotte, Aviral Goel, Filip Krikava, Jan Vitek.
In Object-Oriented Programming, Systems, Languages & Applications (OOPSLA'20).

2019

acm_artifact_available
acm_artifact_evaluated_functional
acm_artifact_evaluated_reusable
On the design, implementation, and use of laziness in R.
Aviral Goel, Jan Vitek.
In Object-Oriented Programming, Systems, Languages & Applications (OOPSLA'19).

Lambdulus: teaching lambda calculus practically.
Jan Sliacky and Petr Maj.
In SPLASH-E'19.

RDT: A Dynamic Tracing Framework for R.
Aviral Goel, Filip Křikava, Jan Vitek.
In R Implementation, Optimization, and Tooling (RIOT'19).

Julia's Efficient Algorithm for Subtyping Unions and Covariant Tuples (Pearl).
Benjamin Chung, Francesco Zappa Nardelli, Jan Vitek.
In European Conference on Object-Oriented Programming (ECOOP'19).

Julia's Efficient Algorithm for Subtyping Unions and Covariant Tuples (Artifact).
Benjamin Chung, Francesco Zappa Nardelli, Jan Vitek.
In Dagstuhl Artifact Series, volume 5, number 2.

acm_artifact_available
acm_artifact_evaluated_functional
acm_artifact_evaluated_reusable
Scala Implicits Are Everywhere: A Large-Scale Study of the Use of Scala Implicits in the Wild.
Filip Křikava, Heather Miller, and Jan Vitek.
In Object-Oriented Programming, Systems, Languages & Applications (SPLASH'19 OOPSLA).

Online Abstraction with MDP Homomorphisms for Deep Learning.
Ondřej Bíža, Robert Platt.
In International Conference on Autonomous Agents and MultiAgent Systems (AAMAS'19).

R Melts Brains: An IR for First-Class Environments and Lazy Effectful Arguments.
Olivier Flückiger, Guido Chari, Jan Ječmen, Ming-Ho Yee, Jakob Hain, Jan Vitek.
In International Symposium on Dynamic Languages (DLS'19).

On the impact of Programming Languages Code Quality.
Emery D. Berger, Celeste Hollenbeck, Petr Maj, Olga Vitek, Jan Vitek.
In ACM Transactions on Programming Languages and Systems, article no. 21.

Towards a type system for R.
Alexi Turcotte, Jan Vitek.
In Proceedings of the 14th Workshop on Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems (ICOOLPS'19).