Maarten Faddegon, Ph.D. candidate at University of Kent, UK.

Maarten Faddegon

C.V. publications software contact

Currently I work at Motorola solutions where I design and write software, mostly in the functional and concurrent language Erlang. I stimulate innovation within Motorola by organising training sessions, hackathons and collaborating with academia. Previously I was a Ph.D. candidate at the University of Kent, and worked at Associated Compiler Experts in Amsterdam. I was born in Soest, the Netherlands. I speak Dutch, English and Danish.

My main interest is in the area of program analysis and transformation. I research and develop compilers, tracers, debuggers, profilers and virtual machines.

The topic of Ph.D. research is to make tracing and algorithmic debugging for lazy functional languages such as Haskell practical and easy to use for real-world programs. My goal is to help programmers to understand their code and locate bugs in a systematic manner.

Previously I worked on analysis and transformation of reducible and irreducible loops, interprocedural optimization of recursive functions and out-of-SSA translation.

I have experience developing in LLVM, the CoSy compiler framework, the Glasgow Haskell Compiler, and Haskell debugging aids Hat, Hood and Hoed. I am most at home with the programming languages Haskell, Erlang and C, but I have experience with other languages and am keen to pick up more.

At the University of Kent I teach logic, logic programming, functional programming, concurrent programming and using Unix, at Master's and undergraduate level.

Curriculum Vitæ

View Maarten Faddegon's LinkedIn profile Read full C.V.
August 2016 - Present
Software engineer & innovation catalyst, Motorola Solutions
September 2013 - March 2017
Ph.D. candidate & teaching assistant, University of Kent
September 2010 - September 2013
Software engineer, ACE Associated Compiler Experts
October 2005 - March 2012
Ice skating instructor
September 2009 - September 2011
Master of Science, Computer Engineering, University of Technology Delft
September 2004 - September 2008
Bachelor of Information and Communication Technology, Hogeschool Utrecht


  1. Algorithmic debugging for complex lazy functional programs, Maarten Faddegon, Ph.D. Thesis, June 2016
  2. Type Generic Observing (extended journal version), Maarten Faddegon and Olaf Chitil, Computer Languages, Systems & Structures 2017
  3. A Lightweight Hat: Simple Type-Preserving Instrumentation for Self-Tracing Lazy Functional Programs, Olaf Chitil, Maarten Faddegon and Colin Runciman, post-proceedings of Implementation and Application of Functional Languages (IFL) 2016
  4. Lightweight Computation Tree Tracing for Lazy Functional Languages, Maarten Faddegon and Olaf Chitil, proceedings of the ACM SIGPLAN conference on Programming Language Design and Implementation (PLDI) 2016
  5. Algorithmic Debugging of Real-World Haskell Programs: Deriving Dependencies from the Cost Centre Stack, Maarten Faddegon and Olaf Chitil, proceedings of the ACM SIGPLAN conference on Programming Language Design and Implementation (PLDI) 2015
  6. Type Generic Observing, Maarten Faddegon and Olaf Chitil, post-proceedings of Trends in Functional Programming (TFP) 2014
  7. SSA Back-Translation: Faster Results with Edge Splitting and Post Optimization, Maarten Faddegon, Master's Thesis in Computer Engineering, TU Delft, 2011


Maarten Faddegon on Github You can also get the source code for some of my projects.