Stefan Fehrenbach

For better or for worse this is me ;-)

Hi, I’m a PhD student at the University of Edinburgh in the Laboratory for Foundations of Computer Science (LFCS).

I work on programming language support for provenance with James Cheney.


In 2016 I interned at IBM Research. I worked on an Apache Spark backend for the formally verified query compiler Q*cert with Jérôme Siméon.

In 2015 I interned at Microsoft Research to work on Trill with Mike Barnett. Trill is a high-throughput streaming query engine which derives much of its performance from runtime code generation. Over the summer I rewrote the code generation framework from text templates to a custom AST transformation system based on the Roslyn C# compiler.

I got Bachelor and Master of Science degrees from the University of Marburg in Germany. My bachelor’s thesis revolved around evolving legacy code bases to use domain-specific languages. My master’s thesis was about just-in-time compiling parsers using Oracle’s GraalVM and Truffle framework to speed up parsing of syntactically extensible languages.


I am the student representative for LFCS PhD students: come by and talk to me about concerns and suggestions, my office is 5.34, or email me.

See the email addresses at the top of this page. I generally use the university address for university things and the other one for private communication and everything else. Use your own judgment.

Github | Twitter | Google Scholar