Types and Terms Translated: Unrestricted Resources in Encoding Functions as Processes (Extended Version)
Joseph W. N. Paulus, Daniele Nantes-Sobrinho, Jorge A. P\'erez

TL;DR
This paper introduces a new resource-aware typed translation from a non-deterministic lambda calculus with explicit failures to a session-typed pi-calculus, controlling resource usage and modeling client-server interactions.
Contribution
It develops a novel typed translation connecting sequential and concurrent calculi via resource-sensitive type systems, extending previous work with explicit resource management and failures.
Findings
Defines a new resource lambda calculus with non-determinism and failures
Establishes a typed translation to session-typed pi-calculus
Models unrestricted resources as client-server session behaviors
Abstract
Type-preserving translations are effective rigorous tools in the study of core programming calculi. In this paper, we develop a new typed translation that connects sequential and concurrent calculi; it is governed by type systems that control resource consumption. Our main contribution is the source language, a new resource -calculus with non-determinism and failures, dubbed \ulamf. In \ulamf, resources are split into linear and unrestricted; failures are explicit and arise from this distinction. We define a type system based on intersection types to control resources and fail-prone computation. The target language is \spi, an existing session-typed -calculus that results from a Curry-Howard correspondence between linear logic and session types. Our typed translation subsumes our prior work; interestingly, it treats unrestricted resources in \lamrfailunres as client-server…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
