Lolliproc: to Concurrency from Classical Linear Logic via Curry-Howard and Control

Loading...
Thumbnail Image

Embargo Date

Related Collections

Degree type

Discipline

Subject

Computer Sciences

Funder

Grant number

License

Copyright date

Distributor

Related resources

Author

Mazurak, Karl

Contributor

Abstract

While many type systems based on the intuitionistic fragment of linear logic have been proposed, applications in programming languages of the full power of linear logic-including double-negation elimination-have remained elusive. Meanwhile, linearity has been used in many type systems for concurrent programs-e.g., session types-which suggests applicability to the problems of concurrent programming, but the ways in which linearity has interacted with concurrency primitives in lambda calculi have remained somewhat ad-hoc. In this paper we connect classical linear logic and concurrent functional programming in the language Lolliproc, which provides simple primitives for concurrency that have a direct logical interpretation and that combine to provide the functionality of session types. Lolliproc features a simple process calculus “under the hood” but hides the machinery of processes from programmers. We illustrate Lolliproc by example and prove soundness, strong normalization, and confluence results, which, among other things, guarantees freedom from deadlocks and race conditions.

Advisor

Date of presentation

2010-09-27

Conference name

Departmental Papers (CIS)

Conference dates

2023-05-17T07:11:08.000

Conference location

Date Range for Data Collection (Start Date)

Date Range for Data Collection (End Date)

Digital Object Identifier

Series name and number

Volume number

Issue number

Publisher

Publisher DOI

Journal Issues

Comments

Karl Mazurak and Steve Zdancewic. Lolliproc: to Concurrency from Classical Linear Logic via Curry-Howard and Control. In Proc. of the 15th ACM SIGPLAN International Conference on Functional Programming (ICFP), 2010. doi: http://dx.doi.org/10.1145/1863543.1863551 © ACM, 2010. This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published in Proc. of the 15th ACM SIGPLAN International Conference on Functional Programming, {(2010)} http://doi.acm.org/10.1145/1863543.1863551 Email permissions@acm.org

Recommended citation

Collection