I am Michael Walker, otherwise known online as barrucadu. I am currently a Ph.D student in the Department of Computer Science at the University of York.
My research relates to nondeterministic concurrency in pure functional programming languages, such as Haskell. Increasingly, turning to concurrency for performance gains is a no-brainer, but it can be hard to get it right. Concurrency is hard in a number of areas:
Testing, due to nondeterminism inherent in the underlying primitives and abstractions, meaning we need new techniques.
Formal verification, in the presence of abstractions like first-class functions, lazy evaluation, and “higher-order” state; many of which are essential in a pure functional language.
Optimisation, as compiler optimisations typically stop as soon as side-effects are involved.
My recent work has been on systematic testing in the presence of relaxed memory, where caching can delay the visibility of writes. The sequentially-consistent portion of this work is documented in one of my papers, and I am in the process of writing a technical report on the further developments. I have also started investigating the verification of my testing framework, in the Isabelle/HOL proof assistant.