Prospective Graduate Students: I’m currently recruiting new Doctoral students. See this post if you’re interested in working on programming languages theory with me.
I’m Joseph (Joey) Eremondi, an Assistant Professor in Computer Science at the University of Regina.
My research is centred around type systems for making code more reliable, and in the theory and practice of making such systems easier to use. In particular, I’m interested in developing semantics to increase the flexibility of dependent pattern matching, mixing dependent types with gradual types, and improving error messages for dependently-typed languages. I’ve also researched the properties of reversal-bounded counter automata, set constraints, and the shuffle operator on words
Previously, I was Royal Society Newton International Fellow doing post-doctoral research with with Ohad Kammar in the Laboratory for Foundations of Computer Science at the University of Edinburgh. I completed my PhD with Ron Garcia at the UBC Software Practices Laboratory.
My research program “Improving Usability of Dependently Typed Programming Languages” was selected for the 2025 NSERC Discovery Grants
New Position: Assistant Professor at University of Regina
Gave a talk at the Scottish Programming Languages Seminar about my postdoc research on pattern matching, video here
Gave a talk at the University of Strathclyde MSP101 Seminar Series about gradual dependent types, video here
CS 490DO / 890DI: Verified Proofs and Programs (based on Programming Language Foundations in Agda)
CS 350: Programming Language Concepts
CS 115: Object Oriented Design
CS 350: Programming Language Concepts