I am a research associate in the Department of Computer Science at Heriot Watt University, Edinburgh.

My main research interests are

  • The design & implementation of domain specific languages
  • High-level parallel & distributed functional programming languages.
  • Heterogeneous and hierachical platforms with multicore CPUs, FPGAs and GPUs.
  • Program profiling and transformation for FPGAs.
  • Agent-based distributed systems.
  • Data modeling with semantic web principles.

My PhD research focused on reliably massively parallel computing. I designed and implemented HdpH-RS, a reliability extension to HdpH, a Haskell DSL for distributed parallel programming. More details can be found here. My industrial experience includes 6 month period working for a startup company, developing distributed systems with Haskell.

I am now working on the Rathlin project. I am designing and implementing a DSL called RIPL for a novel FPGA-based processor for image processing. I organised a workshop on real-world domain specific languages in May 2014, which included a presentation on RIPL. I have previously worked on the SerenA project, aiming to transform research processes by proactively creating surprising connection opportunities.

I am interested in the education of computer science, and functional programming languages, I organise a monthly functional programming Edinburgh meetup EdLambda. I also believe open source is the progressive way to share software:

“Because sharing ideas and code make us move ahead more quickly… Because it’s good to spread everybody’s valuable contribution… Because we can face the same problems and benefit from the same solutions.” Fabrice Niessen.

“When someone shares something of value with you, and you benefit from it, you have a moral obligation to share it with others.” Chinese proverb.