Liam O'Connor
21st November 2018


I am Liam O'Connor, a computer science researcher, student and teacher, currently working at UNSW. I specialise in programming languages and type systems, verification, formal methods, and concurrency.

I am responsible for teaching multiple theoretical courses, ranging from programming languages to formal methods to functional programming. I am also involved in supervision of various undergraduates on various projects. I work regularly in and on the Haskell programming language and the Agda proof assistant. Much of my research work involves these languages.

Originally part of my doctorate and now as ongoing research work, I designed the Cogent programming language, and I remain a contributor to its associated verification framework and compiler. This project is part of the long-term vision of the Trustworthy Systems team at CSIRO Data61, to reduce the cost and effort required to make formally verified systems. In the past I have also worked with the Trustworthy Systems team on the l4.verified project and tools for the Isabelle theorem prover. I have also been affiliated with the DPH and Accelerate projects as my PhD supervisor was Prof. Gabriele Keller.

This contains my blog as well as a publication list, and other miscellany.


…or you can find more in the archives.


abstraction agda aplas asplos blog category-theory cogent comp2111 comp3151 competition compilers concurrency conference coq courses cpp data61 edsls file-systems foundations fp-syd functional hakyll haskell icfp imperative itp latex lecture linear-types ml-modules ml-workshop model-checking monads paradox parallelism patch-theory plos publication quickcheck reasoning refinement sapling semantics separation-logic slides standard-ml stm term-representation testing theorem-proving total tyde type-theory types unsw verification version-control