The Essence of Multitasking. Harrison, W. L. In 11th International Conference on Algebraic Methodology and Software Technology (AMAST 2006), pages 158-172, July, 2006.
Paper
Code abstract bibtex 6 downloads This article demonstrates how a powerful and expressive abstraction from concurrency theory—monads of resumptions—plays a dual rôle as a programming tool for concurrent applications. The article demonstrates how a wide variety of typical OS behaviors may be specified in terms of resumption monads known heretofore exclusively in the literature of programming language semantics. We illustrate the expressiveness of the resumption monad with the construction of an exemplary multitasking kernel in the pure functional language Haskell. Code available at link.
@inproceedings{harrison06,
author = {William L. Harrison},
title = {The Essence of Multitasking},
booktitle = {11th International Conference on Algebraic Methodology
and Software Technology {(AMAST 2006)}},
pages = {158-172},
month = {July},
year = {2006},
url_Paper = "https://harrisonwl.github.io/assets/papers/amast06.pdf",
abstract = "This article demonstrates how a powerful and expressive abstraction from concurrency theory---monads of resumptions---plays a dual r\^{o}le as a programming tool
for concurrent applications.
The article demonstrates how a
wide variety of typical OS behaviors may be specified in terms of
resumption monads known heretofore exclusively in the literature of
programming language semantics.
We illustrate the expressiveness of the resumption monad with the
construction of an exemplary
multitasking kernel in the pure functional language
Haskell. Code available at link.",
url_Code = "https://harrisonwl.github.io/assets/code/EoMT.tar.gz",
}