Lightweight concurrency primitives for GHC

Lightweight concurrency primitives for GHC
复制标题

GHC 的轻量级并发原语

DOI:
10.1145/1291201.1291217
复制
发表时间:
2007
期刊:
Ciba Foundation symposium
影响因子:
--
通讯作者:
A. Tolmach
A. Tolmach
中科院分区:
--
文献类型:
--
作者:
Peng Li;S. Marlow;S. Jones;A. Tolmach

文献摘要

被引文献

相似文献

Glasgow Haskell 编译器 (GHC) 在其运行时系统中具有相当复杂的并发支持,该系统是用低级 C 代码编写的。随着GHC的发展,运行时系统变得越来越复杂、容易出错、难以维护并且难以添加新的并发特性。 本文提出了一种在 GHC 中实现并发的替代方法。运行时系统不是硬连接所有类型的并发功能,而是仅提供一小组并发原语的薄基板,其余并发功能在用 Haskell 编写的软件库中实现。这样的设计提高了并发支持的安全性;它还提供了更多并发功能的可定制性,可以将其开发为Haskell库包并进行模块化部署。
The Glasgow Haskell Compiler (GHC) has quite sophisticated support for concurrency in its runtime system, which is written in low-level C code. As GHC evolves, the runtime system becomes increasingly complex, error-prone, difficult to maintain and difficult to add new concurrency features. This paper presents an alternative approach to implement concurrency in GHC. Rather than hard-wiring all kinds of concurrency features, the runtime system is a thin substrate providing only a small set of concurrency primitives, and the remaining concurrency features are implemented in software libraries written in Haskell. This design improves the safety of concurrency support; it also provides more customizability of concurrency features, which can be developed as Haskell library packages and deployed modularly.