Back to Futures
We briefly introduce the semi-axiomatic sequent calculus for linear logic whose natural computational interpretation is session-typed asynchronous communication. This natural asynchrony allows us to endow it with a shared-memory semantics that is weakly bisimilar to its more standard message-passing semantics. We then show how to further refine the concurrent shared memory semantics into a sequential one. Exploiting the expressive framework of adjoint logic, we show how to combine instances of message-passing, shared-memory, and sequential languages into a coherent whole. We exemplify this by providing rational reconstructions for SILL and futures, two approaches for introducing concurrency into functional programming languages. As a byproduct we obtain a first complete definition of typed linear futures.
READ FULL TEXT