MSc thesis defense by Robert Schenck.

Time: Monday, January 6, 2020, 13:00-14:00.

Place: PLTC meeting room (HCØ-01-0-029), Universitetsparken 5.


While a common staple of many modern functional programming languages, sum types are an unusual feature in specialized, computeoriented languages. We advocate that sum types have merit even in this restricted setting: providing increased safety and better abstraction at manageable cost.

This thesis explores adding sum types to Futhark—a compute-oriented, purely functional, data-parallel array programming language. The work includes a theoretical development of sum types in model type system closely related to Futhark’s type system, implementation details for adding sum types to the Futhark compiler, and an analysis of the implementation—including suggestions to improve performance.

Supervisors: Martin Elsman and Troels Henriksen (co-supervisor)

External examiner: Mads Rosendahl, RUC


06 January 2020