kirancodes.me
To Proof Maintenance & Beyond!

Systems demonstration: writing NetBSD sound drivers in Haskell

Kiwamu Okabe, Takayuki Muranushi

Abstract

Most strongly typed, functional programming languages are not equipped with a reentrant garbage collector. Therefore such languages are not used for operating systems programming, where the virtues of types are most desired. We propose the use of Context-Local Heaps (CLHs) to achieve reentrancy, which also increasing the speed of garbage collection. We have implemented CLHs in Ajhc, a Haskell compiler derived from jhc, rewritten some NetBSD sound drivers using Ajhc, and benchmarked them. The reentrant, faster garbage collection that CLHs provide opens the path to type-assisted operating systems programming.

DOI 10.1145/2633357.2633370

Related papers