My general interests are in the theory and implementation of programming languages and compilers. I'm particularly well-versed in program transformations in functional programming.
My PhD work focused on type systems and program transformations for functional reactive programs written in Haskell - programs which consume inputs over time to produce outputs at the same rate, thus causing said programs to react to their inputs. In my thesis we focus on the Arrowised Functional Reactive Programming (AFRP) paradigm and how programs written in that paradigm can be made more efficient. We look at the loop operator in such programs, which has performance issue due to relying on Haskell's lazy evaluation, and implement program transformations replacing lazy loop with strict variants.
You can find my thesis here.
The rest of this page is an archive of my Warwick webpage, which is no longer accessible.
Keating, Finnbar and Gale, Michael B. (2024)
Functional Reactive Programming, Rearranged. (pdf)
Published in Haskell Symposium '24. Available at DOI 10.1145/3677999.3678278.
Keating, Finnbar and Gale, Michael B. (2023)
This Is Driving Me Loopy: Efficient Loops in Arrowized Functional Reactive Programs. (pdf)
Published in Haskell Symposium '23. Available at DOI 10.1145/3609026.3609726.
Keating, Finnbar and Gale, Michael B. (2021)
Graded Monads and Type-Level Programming for Dependence Analysis. (pdf)
Published in Haskell Symposium '21. Available at DOI 10.1145/3471874.3472981.
| Date | Conference - Location | Contribution |
|---|---|---|
| 2024 | ||
| September 2024 | ICFP '24 - Seattle, USA | Talk at the Haskell Symposium (slides). |
| April 2024 | Advanced Haskell Seminar, University of Bristol | Ran an invited seminar session on proc-notation for interested undergraduates (notes). |
| 2023 | ||
| November 2023 | Fun in the REPL - Bristol | Attended |
| September 2023 | ICFP '23 - Seattle, USA | Talk at the Haskell Symposium (video, slides). |
| March 2023 | WPCCS'23 - Hybrid (Warwick) | Chaired the entire conference, did a talk (slides). |
| 2022 | ||
| September 2022 | ICFP '22 - Ljubljana, Slovenia | Attended |
| June 2022 | Meeting on Graded Types - Hybrid (Kent) | Attended |
| 2021 | ||
| Dec 2021 | WPCCS 2021 - Hybrid (Warwick) | Talk (slides), which won an award for best presentation of the HPC morning session! |
| Aug 2021 | ICFP '21 - Online (South Korea) | Talk at the Haskell Symposium (video, slides) |
| April 2021 | Midlands Graduate School 2021 - Online (Sheffield) | Attended |
| March 2021 | BCTCS 2021 - Online (Liverpool) | Talk (slides with speaker notes, abstract) |
| 2020 | ||
| December 2020 | WPCCS 2020 - Online (Warwick) | Attended |
| 2018-2019 (as undergraduate) | ||
| December 2019 | WPCCS 2019 - Warwick | Attended |
| September 2018 | S-REPLS 10 - Birkbeck, University of London | Attended |
I have taught on the following modules. This has involved teaching in labs and marking coursework.