Karl-Filip Faxén

I'm a Senior Researcher at the Computer Systems Laboratory at SICS. I'm mainly working on programming language related stuff.

I live about 60 km north east of Stockholm, in a red wooden house that I share with my wife Emma and our twins Alma and Arthur.


My main research concerns multiprocessor programming, especially tool and language support, including dependence analysis and compilation. I have previously worked in the area of functional languages and their implementation techniques, specifically compile-time analysis, areas I still find fascinating.

I am the main designer and developer of a dynamic dependence analyser called Embla. Embla is aimed at supporting developers in hand parallelizing sequential programs and it is implemented in the Valgrind instrumentation framework.

I have written an optimizing compiler for a small functional language I call Plain (it is a nonstrict higher order polymorphically typed pure functional language). Although it is quite a minimalistic language, it contains all of the things which make bigger languages like Haskell difficult to compile (except for separate compilation). From time to time, I hack on och, an Optimizing Compiler for Haskell, which is going to include a superset of the optimizations of the Plain compiler, but reformulated in a framework allowing for modular compilation.

Since I am a compiler writer, I am interested in most aspects of the implementation; high level analyses and transformations, code generation issues like register allocation and instruction scheduling, and run-time system issues like garbage collection.

If you want to know what a functional language is, check the comp.lang.functional FAQ.

Karl-Filip Faxén (kff in the domain sics DOT se)