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.
- G. Hoare. The rust programming language. URL http://www.rust-lang.org/.Google Scholar
- M. Iselin. Rustic operating system. URL https://github.com/pcmattman/rustic.Google Scholar
- A. S. Tanenbaum and A. S. Woodhull. Operating Systems Design and Implementation. Pearson, 3 edition, 2008. ISBN 978-0-13-505376-8. Google Scholar
Digital Library
- H. Xi. Applied Type System (extended abstract). In post-workshop Proceedings of TYPES 2003, pages 394--408. Springer-Verlag LNCS 3085, 2004.Google Scholar
Index Terms
Systems demonstration: writing NetBSD sound drivers in Haskell
Recommendations
Systems demonstration: writing NetBSD sound drivers in Haskell
Haskell '14: Proceedings of the 2014 ACM SIGPLAN symposium on HaskellMost 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 ...
Romeo: a system for more flexible binding-safe programming
ICFP '14: Proceedings of the 19th ACM SIGPLAN international conference on Functional programmingCurrent languages for safely manipulating values with names only support term languages with simple binding syntax. As a result, no tools exist to safely manipulate code written in those languages for which name problems are the most challenging. We ...
A real-time garbage collector based on the lifetimes of objects
In previous heap storage systems, the cost of creating objects and garbage collection is independent of the lifetime of the object. Since objects with short lifetimes account for a large portion of storage use, it is worth optimizing a garbage collector ...







Comments