Heterogeneous systems with many types of computational units (multicores, GPUs, FPGAs ,sensors, actuators) are hard to program. The typical approach is to use a hodge podge of different programming languages, which makes it difficult to guarantee global properties like functional correctness and security. This project will develop methods of programming heterogeneous systems using a single functional program, but multiple domain specific languages that generate code for the different computational units, as well as the necessary linking code and protocols. A key point is the use of Haskell's expressive type system to separate nodes based on their roles, capabilities and locations. We will develop methods of verifying the resulting systems using both property-based testing and formal methods.
We are looking for an accomplished functional programmer to work as a PhD student in the Functional Programming group at Chalmers. Experience in developing embedded domain specific languages in Haskell is an advantage but not required. We will provide a stimulating research environment, with lots of interesting colleagues and visitors. We can assure you that Gothenburg is a great place to live too.
A PhD student position is salaried employment. It is limited to five years and includes 20 per cent departmental duties, mostly teaching. The starting salary is around 30,000SEK a month before tax. The position is intended to start in autumn 2017 or soon afterwards. Students of all nationalities are welcome to apply.