login

Adding threads to Standard ML

FigsharePublished 30 June 2018Open access
Eric C. Cooper, J. Gregory Morrisett
Citations53
View PDF

TL;DR

Standard ML has added multiple threads of control to the Standard ML programming language and it is demonstrated how other concurrency and synchronization operations, such as cobegin/coend, futures, and events, can be implemented in terms of the thread interface.

Abstract

Abstract: "We have added multiple threads of control to the Standard ML programming language. Standard ML's support for first-class functions and automatic storage management influenced the design in a number of ways. We demonstrate how other concurrency and synchronization operations, such as cobegin/coend, futures, and events, can be implemented in terms of the thread interface. Finally, we describe three implementations of the thread interface: a coroutine version, a uniprocessor preemptive version, and a multiprocessor Mach-based version."

Keywords

Computer Science