FP Lab at the University of Michigan designs next-generation user interfaces for modern programming languages. Our research runs the methodological gamut, ranging from type-theoretic foundations through to human-centered design. We are particularly interested in applications to computer science education, accessibility, computational and data science, formal verification, and computational creativity.
Projects
Hazel
FP Lab is the academic home of Hazel, a live functional programming environment that is able to understand, manipulate, and even run incomplete programs, i.e. programs with holes.
- Go to hazel.org for more information, papers, and live demos of the many research projects housed within the Hazel research platform.
RustViz: Interactively Visualizing Ownership and Borrowing
We are also working on program visualization techniques for a powerful and elegant systems programming language called Rust.
News
- SPLASH 2024 (Pasadena)
- Andrew Blinn will be presenting our paper Semantically Contextualizing Large Language Models with Typed Holes at OOPSLA 2024! This is joint work with Xiang (Kevin) Li, June Hyung (Jacob) Kim, and Cyrus Omar.
- ICFP 2024 (Milan)
- Cyrus Omar will be presenting our vision paper Modularizing Reasoning about AI Capabilities via Abstract Dijkstra Monads at HOPE 2024! This is joint work with Anil Madhavapeddy (Cambridge) and Patrick Ferris (Cambridge).
- New PhD students in 2024
- Gregory Croisdale will join FP Lab as a PhD student in Summer 2024!
- Alexander Bandukwala will join FP Lab as a new PhD student in Fall 2024!
- Alexander Bandukwala was awarded an NSF CSGrad4US Fellowship!
- Thomas Porter will join FP Lab as a new PhD student in Fall 2024!
- Graduating FP Lab members in 2024
- Several FP Lab students will be going on to graduate programs, including four students going on to PhD programs this fall:
- Eric Zhao will be joining the PhD program at Brown!
- Eric Zhao was awarded an NSF Graduate Research Fellowship!
- Matthew Ruiz will be joining the PhD program at Purdue!
- Alaric (Yuxiang) Chen will be joining the PhD program at Purdue!
- Yanjun Chen will be joining the PhD program at UC Irvine!
- Congratulations to all FP Lab graduates!
- POPL 2024 (London)
-
Eric Zhao presented our paper *Total Type Error Localization and Recovery with Holes* at POPL 2024 in January! This is joint work with Raef Maroof, Anand Dukkipati, Andrew Blinn, Zoe (Zhiyi) Pan, ****and Cyrus Omar.
🎉 This paper was honored with a Distinguished Paper Award!
-
Alexander Bandukwala presented our vision paper Toward a Live, Rich, Composable, and Collaborative Planetary Compute Engine at the Programming for the Planet (PROPL) Workshop at POPL 2024! This is joint work with Andrew Blinn and Cyrus Omar.
- TFP 2024 (South Orange, NJ)
- Adam Chen and Thomas Porter presented our paper Polymorphism with Typed Holes at TFP 2024 in January!
- This paper has been accepted for inclusion in the TFP proceedings! (preprint forthcoming in May)
- SPLASH 2023 (Cascais, Portugal)
-
Cyrus Omar presented our paper *Live Pattern Matching with Typed Holes* at OOPSLA 2023! This is joint work with Yongwei Yuan, Scott Guest, Eric Griffis, Hannah Potter, and David Moon.
🎉 This paper was honored with a Distinguished Paper Award!
-
Cyrus Omar presented Totally Live Programming with Hazel (Progress Report) at the HATRA 2023 workshop! This is joint work with Andrew Blinn and David Moon.
- VL/HCC 2023 (Washington, DC)
- MWPLS 2023 (Ann Arbor)
- We brought back the Midwest Programming Languages Summit and hosted it in Ann Arbor!
- Andrew Blinn presented a talk on Type-Directed Prompt Construction for LLM-Powered Programming Assistants.
- Hyman Zhao, Alaric Chen, Yue Huang, and Yifan Liu presented a poster on RustViz 2: Automatically and Interactively Visualizing Ownership, Borrowing, and Lifetimes.
- Matthew Keenan joins FP Lab as a new PhD student at Michigan in Fall 2023!
- Cyrus Omar was awarded the NSF CAREER Award for leading FP Lab’s ongoing work on Hazel!
Older News
People
Active Members at Michigan
Former Members