Page Not Found
Page not found. Your pixels are in another canvas.
A list of all the posts and pages found on the site. For you robots out there is an XML version available for digesting as well.
Page not found. Your pixels are in another canvas.
about me
This is a page not in th emain menu
Published:
hey you found this page thats awesome
Published in OOPSLA, 2017
Virtual machines are already performing many of the type checks demanded by sound gradual type systems, and eliminating redundant checks significantly improves performance.
Recommended citation: Gregor Richards, Ellen Arteca, and Alexi Turcotte. 2017. The VM Already Knew That: Leveraging Compile-Time Knowledge to Optimize Gradual Typing. Proc. ACM Program. Lang. 1, OOPSLA, Article 55 (October 2017), 27 pages. http://reallytg.github.io/files/papers/oopsla17-oopsla98.pdf
Published in LATIN, 2018
From the algorithms problem sessions at Waterloo; a better approximation for cutting up an orthogonal histogram into rectangular boxes.
Recommended citation: Therese Biedl, Martin Derka, Veronika Irvine, Anna Lubiw, Debajyoti Mondal, and Alexi Turcotte. 2018. Partitioning Orthogonal Histograms Into Rectangular Boxes. Latin American Theoretical Informatics Symposium, LATIN, 14 pages. http://reallytg.github.io/files/papers/latin18-histograms.pdf
Published in CCCG, 2018
From the algorithms problem sessions at Waterloo; a study of unit bar-visibility representations.
Recommended citation: Therese Biedl, Ahmad Biniaz, Veronika Irvine, Philipp Kindermann, Anurag Murty Naredla, and Alexi Turcotte. 2018. Integral Unit Bar-Visibility Graphs. Canadian Conference on Computational Geometry, CCCG, 7 pages. http://reallytg.github.io/files/papers/cccg18-unit-bar.pdf
Published in DMTCS, 2019
From the algorithms problem sessions at Waterloo; this paper presents some results about token swapping on a tree, i.e., sorting with a transposition tree.
Recommended citation: Ahmad Biniaz, Kshitij Jain, Anna Lubiw, Zuzana Masárová, Tillmann Miltzow, Debajyoti Mondal, Anurag Murty Naredla, Josef Tkadlec, Alexi Turcotte. 2019. Token Swapping on Trees. DMTCS, 37 pages. http://reallytg.github.io/files/papers/arxiv19-token-swap.pdf
Published in ECOOP, 2019
This paper explores how to build a formal semantics for interactions with a foreign-function interface without explicitly modelling the foreign language.
Recommended citation: Alexi Turcotte, Ellen Arteca, and Gregor Richards. 2019. Reasoning About Foreign Function Interfaces Without Modelling the Foreign Language. European Conference on Object-Oriented Programming, ECOOP, Article 16 (July 2019), 32 pages. http://reallytg.github.io/files/papers/ecoop19-preprint.pdf
Published in ICOOOLPS (ECOOP), 2019
This paper describes our initial exploration into the challenges of building a static type system for R.
Recommended citation: Alexi Turcotte and Jan Vitek. 2019. Reasoning About Foreign Function Interfaces Without Modelling the Foreign Language. Proceedings of the 14th Workshop on Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems, ICOOOLPS, Article 4 (July 2019), 5 pages. http://reallytg.github.io/files/papers/towards-ts-for-r.pdf
Published in IEEE VIS, 2020
This paper describes a strategy for visualizing large amounts of type signatures for functions; these signatures were collected as part of a large experiment for the Types for R paper.
Recommended citation: Cameron Moy, Julia Belyakova, Alexi Turcotte, Sara Di Bartolomeo and Cody Dunne, Just TYPEical: Visualizing Common Function Type Signatures in R, IEEE Visualization Conference (VIS), 2020, pp. 121-125 http://reallytg.github.io/files/papers/just-typeical.pdf
Published in OOPSLA, 2020
We designed a type language to annotate R functions based on a large-scale corpus analysis of real R code. The design is simple, and useful enough to obviate many checks programmers explicitly write.
Recommended citation: Alexi Turcotte, Aviral Goel, Filip Křikava, Jan Vitek, Designing Types for R, Empirically, Proceedings of the ACM on Programming Languages (OOPSLA), 2020, Vol. 4, Article 181, pp. 1-25 http://reallytg.github.io/files/papers/types-for-r-oopsla20-final.pdf
Published in OOPSLA, 2021
We present a technique to automatically refactor JavaScript programs using asynchronous APIs to use their asynchronous equivalents using promise-based asynchrony. While the technique is unsound, very few refactoring suggestions resulted in behavioral differences.
Recommended citation: Satyajit Gokhale, Alexi Turcotte, and Frank Tip. Automatic Migration from Synchronous to Asynchronous JavaScript APIs. Proc. ACM Program. Lang. 5, OOPSLA, Article 160 (October 2021), 27 pages. http://reallytg.github.io/files/papers/automatic-migration.pdf
Published in ICSE, 2022
This paper details eight anti-patterns that frequently occur in asynchronous JavaScript programs. A dynamic profiling and visualization tool augment the static detection of anti-patterns by visualizing promise lifetimes, helping programmers to see the impact of these anti-patterns.
Recommended citation: Alexi Turcotte, Michael D. Shah, Mark W. Aldrich, and Frank Tip. DrAsync: Identifying and Visualizing Anti-Patterns in Asynchronous JavaScript. In Proceedings of the 44th International Conference on Software Engineering (ICSE). Association for Computing Machinery, New York, NY, USA, 774–785. http://reallytg.github.io/files/papers/drasync.pdf
Published in EMSE, 2022
This paper presents an approach for debloating server-side JavaScript applications, even in the presence of dynamism. Rather than removing unused code, said code is replaced with a stub that can dynamically fetch the code if it is ever needed. In practice, not much code is loaded dynamically.
Recommended citation: Alexi Turcotte, Ellen Arteca, Ashish Mishra, Saba Alimadadi, and Frank Tip. stubbifier: Debloating Dynamic Server-Side JavaScript Applications. Empirical Software Engineering, Vol. 27, Article 161 (2022) http://reallytg.github.io/files/papers/stubbifier.pdf
Published in ASE (Tool), 2022
This paper presents a tool for dynamic taint analysis of JavaScript with low overhead. It is built with the GraalVM NodeProf dynamic analysis framework.
Recommended citation: Mark W. Aldrich, Alexi Turcotte, Matthew Blanco, and Frank Tip. Augur: Dynamic Taint Analysis for Asynchronous JavaScript. In 37th IEEE/ACM International Conference on Automated Software Engineering (ASE Tool Track). Rochester, MI, USA. ACM, New York, NY, USA. 4 pages. http://reallytg.github.io/files/papers/augur.pdf
Published in ASE, 2022
Object-relational mappings allow programmers to write object-oriented-looking database code, but this code is prone to the N+1 problem. This paper describes an approach to automtically detect and repair these issues.
Recommended citation: Alexi Turcotte, Mark W. Aldrich, and Frank Tip. reformulator: Automated Refactoring of the N+1 Problem in Database-Backed Applications. In 37th IEEE/ACM International Conference on Automated Software Engineering (ASE). Rochester, MI, USA. ACM, New York, NY, USA. 12 pages. http://reallytg.github.io/files/papers/reformulator.pdf
Published in MSR (Tool), 2022
This paper presents a tool for automatically mining dynamic information from npm packages, including transitive dependencies and the presence of a test suite.
Recommended citation: Ellen Arteca and Alexi Turcotte. 2022. npm-filter: Automating the Mining of Dynamic Information from npm Packages. In Proceedings of the 19th International Conference on Mining Software Repositories (MSR). Association for Computing Machinery, New York, NY, USA, 304–308. http://reallytg.github.io/files/papers/npm-filter.pdf
Published in SLE (Tool), 2022
This paper presents an approach for fuzzing in R; an initial large-scale corpus analysis collects and catalogues real R values, and that catalogue is queried for inputs while fuzzing.
Recommended citation: Alexi Turcotte, Pierre Donat-Bouillud, Filip Křikava, and Jan Vitek. 2022. signatr: A Data-Driven Fuzzing Tool for R. In Proceedings of the 15th ACM SIGPLAN International Conference on Software Language Engineering (SLE), December 06–07, 2022, Auckland, New Zealand. ACM, New York, NY, USA, 6 pages. http://reallytg.github.io/files/papers/signatr.pdf
Published in ASE, 2023
This paper presents an approach for automatically detecting third-party libraries that are not required on application start, and for automatically transforming the application to load such libraries lazily.
Recommended citation: Alexi Turcotte, Satyajit Gokhale, and Frank Tip. 2023. Increasing the Responsiveness of Web Applications by Introducing Lazy Loading. In 38th IEEE/ACM International Conference on Automated Software Engineering (ASE). Kirchberg, Luxembourg. ACM, New York, NY, USA. 12 pages. http://reallytg.github.io/files/papers/lazifier.pdf
Published:
i gave a talk on how to reason about ffis without (fully) modelling the foreign language