Publication details

Saarland University Computer Science

A Concurrent Lambda-Calculus with Promises and Futures

Jan Schwinghammer

Master's Thesis, Programming Systems Lab, Universitšt des Saarlandes, February 2002

Concurrency plays an important role in programming language design. Logic variables in the form of futures and promises provide a means of synchronization and communication in concurrent computation. Futures and promises, which differ from general logic variables in that a distinction is made between reading and writing them, have been introduced previously. However, no formal operational semantics has been provided for promises.
In order to formally investigate properties of futures and promises in a functional setting, a concurrent $lambda$-calculus extended with futures and promises is presented. It is intended to provide a computation model for the programming language Alice. We prove the calculus confluent, and give a proof showing strong normalization in the simply typed case without promises. Further, we introduce a type system so as to statically enforce proper use of promises in the calculus.

Awarded the Günter Hotz-Medal for outstanding Computer Science graduates.

Download PDF        Show BibTeX               

Login to edit

Webmaster, Wed Sep 16 10:47:00 2009