About me

I am a PhD student in the Programming Languages and Systems group at UNSW in Sydney, Australia. My supervisors are Ben Lippmeier, Manuel Chakravarty and Gabrielle Keller. I am interested in optimisations for purely functional languages, specifically fusion for nested data parallelism.

I was also the winner of the inaugural 2014 FP-Syd Coq Fight, perhaps the first ever live theorem proving competition. I should note, however, that this doesn’t translate into actual theorem prover proficiency.

The dangers of greedy fusion

The dangers of greedy fusion

Publications

Projects

Clustering

Finding the best fusion clustering is actually NP-hard (as proved by Alain Darte). By converting combinator programs to integer linear programs, we can generally find good clusterings in adequate time.

Disciplined Disciple Compiler (DDC)

DDC is a research compiler for a strict functional language with effect typing. It isn’t particularly useful yet, but has some interesting optimisations.

Linear Integer/Mixed Programming (LIMP)

A fairly simple Haskell library for expressing linear programs. At the moment, there’s only a simplifier, COIN/CBC bindings, and pretty-printing.

Audio pilot

A game that takes music and lets you fly around a tunnel. Written in Haskell, using OpenGL.

Social media

Personal

I like writing short stories - fiction. Some of them are here. Sometimes, the school newspaper even prints them!

I also like to make music when I can.