• Home
  • Search
  • Lightweight concurrency primitives for GHC
  • Cite Icon37
  • https://doi.org/10.1145/1291201.1291217Copy DOI Icon

Lightweight concurrency primitives for GHC

  • Sep 30, 2007
  • Peng Li +3 more
Show More
  • Abstract
  • Literature Map
  • References
  • Citations
  • Similar Papers
Abstract

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.

Similar Papers
  • Conference Article
  • Citations13

The Intel labs Haskell research compiler

  • Sep 23, 2013
  • Hai Liu +3
  • Conference Article
  • Citations75

A principled approach to operating system construction in Haskell

  • Sep 12, 2005
  • Thomas Hallgren +3
  • Research Article
  • Citations6

Automatic SIMD vectorization for Haskell

  • Sep 25, 2013
  • ACM SIGPLAN Notices
  • Leaf Petersen +2
  • Conference Article
  • Citations50

Kill-safe synchronization abstractions

  • Jun 09, 2004
  • Matthew Flatt +1
  • Research Article
  • Citations5

Dynamic optimization for functional reactive programming using generalized algebraic data types

  • Sep 12, 2005
  • ACM SIGPLAN Notices
  • Henrik Nilsson
  • Research Article
  • Citations24

Causal commutative arrows

  • Jun 29, 2011
  • Journal of Functional Programming
  • Hai Liu +2
  • Conference Article
  • Citations7

The Design and Implementation of GUMSMP

  • Aug 28, 2013
  • Malak Aljabri +2
  • Conference Article
  • Citations9

Scalable i/o event handling for GHC

  • Sep 30, 2010
  • Bryan O'Sullivan +1
  • Book Chapter
  • Citations4

Language constructs and runtime systems for compositional parallel programming

  • Jan 01, 1994
  • Ian Foster +1
  • PDF
  • Research Article
  • Citations4

A Utilization Framework of Ubiquitous Resources for Service Robots Using Semantic Matchmaking

  • Apr 01, 2015
  • International Journal of Advanced Robotic Systems
  • Kun Qian +4
  • Research Article
  • Citations4

Fission: Secure Dynamic Code-Splitting for JavaScript

  • May 01, 2017
  • DROPS (Schloss Dagstuhl – Leibniz Center for Informatics)
  • Arjun Guha +4
  • Conference Article
  • Citations17

Towards an actor-based concurrent machine model

  • Jul 06, 2009
  • Hans Schippers +4
  • Book Chapter
  • Citations16

Compiling Mercury to High-Level C Code

  • Jan 01, 2002
  • Fergus Henderson +1
  • Research Article

Lazy Linearity for a Core Functional Language

  • Jan 08, 2026
  • Proceedings of the ACM on Programming Languages
  • Rodrigo Mesquita +1
  • Book Chapter
  • Citations6

Common subexpressions are uncommon in lazy functional languages

  • Jan 01, 1998
  • Olaf Chitil
Cactus Communications logo

Copyright 2026 Cactus Communications. All rights reserved.