Repository logo
 

Concurrent system programming with effect handlers

Accepted version
Peer-reviewed

Type

Conference Object

Change log

Authors

Dolan, S 
Eliopoulos, S 
Hillerström, D 
Sivaramakrishnan, KC 

Abstract

© Springer International Publishing AG, part of Springer Nature 2018. Algebraic effects and their handlers have been steadily gaining attention as a programming language feature for composably expressing user-defined computational effects. While several prototype implementations of languages incorporating algebraic effects exist, Multicore OCaml incorporates effect handlers as the primary means of expressing concurrency in the language. In this paper, we make the observation that effect handlers can elegantly express particularly difficult programs that combine system programming and concurrency without compromising performance. Our experimental results on a highly concurrent and scalable web server demonstrate that effect handlers perform on par with highly optimised monadic concurrency libraries, while retaining the simplicity of direct-style code.

Description

Keywords

4613 Theory Of Computation, 46 Information and Computing Sciences

Journal Title

Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)

Conference Name

Journal ISSN

0302-9743
1611-3349

Volume Title

10788 LNCS

Publisher

Springer International Publishing
Sponsorship
Royal Commission for the Exhibition of 1851 (200684)