Jeff Smits
I am a Research Software Engineer at Delft University of Technology (TU Delft), where I currently help out in the Programming Languages Research Group on the Spoofax Language Workbench and the Algorithmics Research Group on the Pumpkin CP-SAT solver. I have a PhD in Computer Science from TU Delft.
I have various research interests around language design and compiler technology. I’ve worked on declarative specification of data-flow analysis, practical incremental compilation for existing languages, and gradual types. I’ve designed FlowSpec, a domain-specific language for the specification of data-flow analysis. For incremental compilation I’ve taken apart the compiler of the Stratego term transformation language, and reassembled it as an incremental compiler. I’ve added a gradual type system to Stratego (which sounds a lot more final than it is in practice). I’ve also worked with Toine Hartman during his Master’s thesis project on optimising Stratego’s peculiar form of pattern matching. FlowSpec and Stratego are part of the Spoofax Language Workbench. I was formerly supervised by Eelco Visser, we miss him dearly.
Publications
Conference articles
- Maarten Flippo, Konstantin Sidorov, Imko Marijnissen, Jeff Smits, Emir Demirović. A Multi-Stage Proof Logging Framework to Certify the Correctness of CP Solvers. In 30th International Conference on Principles and Practice of Constraint Programming (CP 2024). Leibniz International Proceedings in Informatics (LIPIcs), Volume 307, pages 11:1-11:20. doi
- Jeff Smits, Toine Hartman, Jesper Cockx. Optimising First-Class Pattern Matching. In Bernd Fischer, Lola Burgueño, Walter Cazzola, editors, Proceedings of the 15th ACM SIGPLAN International Conference on Software Language Engineering, SLE 2022, Auckland, New Zealand, December 6-7, 2022. pages 74–83, ACM, 2022. doi
- Jeff Smits, Eelco Visser. Gradually Typing Strategies. In Proceedings of the 13th ACM SIGPLAN International Conference on Software Language Engineering, SLE 2020, Virtual, USA, November 16-17, 2020. ACM, 2020. preprint doi
- Jeff Smits, Eelco Visser. FlowSpec: declarative dataflow analysis specification. In Benoît Combemale, Marjan Mernik, Bernhard Rumpe, editors, Proceedings of the 10th ACM SIGPLAN International Conference on Software Language Engineering, SLE 2017, Vancouver, BC, Canada, October 23-24, 2017. pages 221-231, ACM, 2017. doi
Journal articles
- Jeff Smits, Gabriël D.P. Konat, Eelco Visser. Constructing Hybrid Incremental Compilers for Cross-Module Extensibility with an Internal Build System. In The Art, Science, and Engineering of Programming, 2020. Vol. 4, Issue 3, Article 16. doi
- Jeff Smits, Guido Wachsmuth, Eelco Visser. FlowSpec: A Declarative Specification Language for Intra-Procedural Flow-Sensitive Data-Flow Analysis. In: Journal of Computer Language, 2020. Vol. 57, April 2020, 100924. doi
Theses
- Jeff Smits. Strategic Language Workbench Improvements. Doctoral thesis, Delft University of Technology, September 2023. In IPA Dissertation Series, Entry 2023-06. pdf doi
- Jeff Smits. The Static Semantics of the Green-Marl Graph Analysis Language. Master's thesis, Delft University of Technology, February 2016. repository