Deoptless: Speculation with Dispatched On-Stack Replacement and Specialized Continuations. Olivier Flückiger, Jan Ječmen, Sebastián Krynski, Jan Vitek.
In
PLDI'22: ACM SIGPLAN Conference on Programming Language Design and Implementation.
Type Stability in Julia: Avoiding Performance Pathologies in JIT Compilation. Artem Pelenitsyn, Julia Belyakova, Benjamin Chung, Ross Tate, Jan Vitek.
In
OOPSLA'21: Proc. ACM SIGPLAN Conference on Systems, Programming, Languages, and Applications: Software for Humanity.
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
OOPSLA'21: Proc. ACM SIGPLAN Conference on Systems, Programming, Languages, and Applications: Software for Humanity.
What We Eval in the Shadows. Aviral Goel, Pierre Donat-Bouillud, Filip Křikava, Christoph Kirsch, Jan Vitek.
In
OOPSLA'21: Proc. ACM SIGPLAN Conference on Systems, Programming, Languages, and Applications: Software for Humanity.
ASE: A Value Set Decision Procedure for Symbolic Execution. A.S. Abyaneh, C.M. Kirsch.
In
ASE'21: Proc. IEEE/ACM International Conference on Automated Software Engineering.
CodeDJ: Reproducible Queries over Large-Scale Software Repositories. Petr Maj, Konrad Siek, Alexander Kovalenko, Jan Vitek.
In
ECOOP'21: European Conference on Object-Oriented Programming.
Formally Verified Speculation and Deoptimization in a JIT Compiler. Aurèle Barrière, Sandrine Blazy, Olivier Flückiger, David Pichardie, Jan Vitek.
In
POPL'21: Principles of Programming Languages.
Contextual Dispatch for Function Specialization. Olivier Flückiger, Guido Chari, Ming-Ho Yee, Jan Jecmen, Jakob Hain, Jan Vitek.
In
OOPSLA'20: Object-Oriented Programming, Systems, Languages & Applications.
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
OOPSLA'20: Object-Oriented Programming, Systems, Languages & Applications.
Designing Types for R, Empirically. Alexi Turcotte, Aviral Goel, Filip Krikava, Jan Vitek.
In
OOPSLA'20: Object-Oriented Programming, Systems, Languages & Applications.
On the design, implementation, and use of laziness in R. Aviral Goel, Jan Vitek.
In
OOPSLA'19: Object-Oriented Programming, Systems, Languages & Applications.
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
SPLASH'19 OOPSLA: Object-Oriented Programming, Systems, Languages & Applications.
From Macros to DSLs: The Evolution of Racket. Ryan Culpepper, Matthias Felleisen, Matthew Flatt, Shriram Krishnamurthi.
In
SNAPL'19: Summit on Advances in Programming Languages.
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
DLS'19: Dynamic Languages Symposium (to appear).
Julia's Efficient Algorithm for Subtyping Unions and Covariant Tuples. Benjamin Chung, Francesco Zappa Nardelli, Jan Vitek.
In
ECOOP'19: European Conference on Object-Oriented Programming.
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 (to appear).
Towards a type system for R. Alexi Turcotte, Jan Vitek.
In
ICOOLPS'19: Proceedings of the 14th Workshop on Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems.
Can Android Run on Time? Extending and Measuring the Android Platform's Timeliness. Yin Yan, Girish Gokul, Karthik Dantu, Steven Y. Ko, Lukasz Ziarek, Jan Vitek.
In
ACM Transactions on Embedded Computing Systems, Vol 17, No. 6.
How to Evaluate the Performance of Gradual Type Systems. Ben Greenman, Asumu Takikawa, Max S. New, Daniel Feltey, Robert Bruce Findler, Jan Vitek, Matthias Felleisen.
In
Journal of Functional Programming, Vol. 29.
Feature-Specific Profiling. Leif Andersen, Vincent St-Amour, Jan Vitek, Matthias Felleisen.
In
Transactions on Programming Languages and Systems, Vol 41, Issue 1.
Verifying a Concurrent Garbage Collector with a Rely-Guarantee Methodology. Yannick Zakowski, David Cachera, Delphine Demange, Gustavo Petri, David Pichardie, Suresh Jagannathan, Jan Vitek.
In
Journal of Automated Reasoning, Vol. 63, Issue 2.
Platform-Independent Dynamic Taint Analysis for JavaScript. Rezwana Karim, Frank Tip, Alena Sochůrková, Koushik Sen.
In
IEEE Transactions on Software Engineering (early access).
Julia: dynamism and performance reconciled by design. Jeff Bezanson, Jiahao Chen, Benjamin Chung, Stefan Karpinski, Viral B. Shah, Jan Vitek, Lionel Zoubritzky.
In
OOPSLA'19: Object-oriented Programming, Systems, Languages, and Applications.
Julia subtyping: a rational reconstruction. Francesco Zappa Nardelli, Julia Belyakova, Artem Pelenitsyn, Benjamin Chung, Jeff Bezanson, and Jan Vitek.
In
OOPSLA'19: Object-oriented Programming, Systems, Languages, and Applications.
Contextual equivalence for a probabilistic language with continuous random variables and recursion. Mitchell Wand, Ryan Culpepper, Theophilos Giannalopoulos, and Andrew Cobb.
In
ICFP'18: International Conference on Functional Programming.
Extracting tests from runtime behavior for R. Filip Křikava.
In
ISAGT'18: Workshop on Introspective Systems for Automatically Generating Tests.
Invited talk.
Tests from Traces: Automated Unit Test Extraction for R. Filip Křikava and Jan Vitek.
In
ISSTA'18: International Symposium on Software Testing and Analysis.
KafKa: Gradual Typing for Objects. Benjamin Chung, Paley Li, Francesco Zappa Nardelli, and Jan Vitek.
In
ECOOP'18: European Conference on Object-Oriented Programming.
Soundness of a Correct Collector for Actors. Juliana Franco, Sylvain Clebsch, Sophia Drossopoulou, Jan Vitek, and Tobias Wrigstad.
In
ESOP'18: European Symposium on Programming.
Correctness of Speculative Optimizations with Dynamic Deoptimization. Olivier Flückiger, Gabriel Scherer, Ming-Ho Yee, Aviral Goel, Amal Ahmed, and Jan Vitek.
In
POPL'18: Principles of Programming Languages.
Deja-vu: A Map of Code Duplicates on GitHub. Cristina V. Lopez, Petr Maj, Pedro Martins, Vaibhav Saini, Di Yang, Jakub Zitny, Hitesh Sajnani, and Jan Vitek.
In
OOPSLA'17: Object-Oriented Programming, Systems, Languages & Applications.
Orca: GC and Type System Co-Design for Actor Languages. Sylvain Clebsch, Juliana Franco, Sophia Drossopoulou, Albert Mingkun Yang, Tobias Wrigstad, and Jan Vitek.
In
OOPSLA'17: Object-Oriented Programming, Systems, Languages & Applications.
Generic Approach to Certified Static Checking of Module-like Constructs. Julia Belyakova.
In
FTFJP'17: Workshop on Formal Techniques for Java-like Programs.
Parallelizing Julia with a Non-invasive DSL. Todd Anderson, Hai Liu, Lindsey Kuper, Ehsan Totoni, Jan Vitek, and Tatiana Shpeisman.
In
ECOOP'17: European Conference on Object-Oriented Programming.
Verifying a Concurrent Garbage Collector using a Rely-Guarantee Methodology. Yannick Zakowski, David Cachera, Delphine Demange, Gustavo Petri, David Pichardie, Suresh Jagannathan, and Jan Vitek.
In
ITP'17: International Conference on Interactive Theorem Proving.
Contracts-Based Control Integration into Software Systems. Filip Krikava, Philippe Collet, Romain Rouvoy, and Lionel Seinturier.
In
R. de Lemos et al. book Self-Adaptive Systems III, LNCS 9640.
Hadoop-Benchmark: Rapid Prototyping and Evaluation of Self-Adaptive Behaviors in Hadoop Clusters. Bo Zhang, Filip Krikava, Romain Rouvoy, and Lionel Seinturier.
In
SEAMS’17: 12th International Symposium on Software Engineering for Adaptive and Self-Managing Systems.
Hadoop-Benchmark: Rapid Prototyping and Evaluation of Self-Adaptive Behaviors in Hadoop Clusters (Artifact). Bo Zhang, Filip Krikava, Romain Rouvoy, and Lionel Seinturier.
In
Dagstuhl Artifacts Series 2509-8195 vol. 3-1.
Making Android Run on Time. Yin Yan, Karthik Dantu, Steven Y. Ko, Jan Vitek, and Lukasz Ziarek.
In
RTAS'17: Real-time and Embedded Technology and Application Symposium.
Helenos: A Realistic Benchmark for Distributed Transactional Memory. Jan Baranowski, Paweł Kobyliński, Konrad Siek, and Paweł T. Wojciechowski.
In
Software: Practice and Experience, volume 48, issue 3.