Types and Terms Translated: Unrestricted Resources in Encoding Functions as Processes (Extended Version)
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 session behaviours in \spi.
Cite
@article{arxiv.2112.01593,
title = {Types and Terms Translated: Unrestricted Resources in Encoding Functions as Processes (Extended Version)},
author = {Joseph W. N. Paulus and Daniele Nantes-Sobrinho and Jorge A. Pérez},
journal= {arXiv preprint arXiv:2112.01593},
year = {2022}
}
Comments
24 pages, plus appendices. Extended version of a paper in the Post-proceedings of TYPES 2021. arXiv admin note: text overlap with arXiv:2104.14759