Experience Report: Statically-Typed Server APIs

In this paper, we present a technique for implementing statically typed application APIs by making an extensive use of Haskell’s type system. We developed the technique as a part of a larger project that aims to produce tools for high-assurance web collaboration.