English
Related papers

Related papers: The Functional Machine Calculus III: Control

200 papers

The benchmark for computation is typically given as Turing computability; the ability for a computation to be performed by a Turing Machine. Many languages exploit (indirect) encodings of Turing Machines to demonstrate their ability to…

Formal Languages and Automata Theory · Computer Science 2014-10-29 Thomas Given-Wilson

The functional correspondence is a manual derivation technique transforming higher-order evaluators into the semantically equivalent abstract machines. The transformation consists of two well-known program transformations: translation to…

Programming Languages · Computer Science 2021-08-17 Maciej Buszka , Dariusz Biernacki

Incremental computation aims to compute more efficiently on changed input by reusing previously computed results. We give a high-level overview of works on incremental computation, and highlight the essence underlying all of them, which we…

Programming Languages · Computer Science 2025-10-15 Yanhong A. Liu

This tutorial gives an advanced introduction to string diagrams and graph languages for higher-order computation. The subject matter develops in a principled way, starting from the two dimensional syntax of key categorical concepts such as…

Logic in Computer Science · Computer Science 2024-12-05 Dan Ghica , Fabio Zanasi

We review the close relationship between abstract machines for (call-by-name or call-by-value) lambda-calculi (extended with Felleisen's C) and sequent calculus, reintroducing on the way Curien-Herbelin's syntactic kit expressing the…

Logic in Computer Science · Computer Science 2010-07-28 Pierre-Louis Curien , Guillaume Munch-Maccagnoni

We investigate the possibility of a semantic account of the execution time (i.e. the number of \beta_v-steps leading to the normal form, if any) for the shuffling calculus, an extension of Plotkin's call-by-value {\lambda}-calculus. For…

Logic in Computer Science · Computer Science 2018-12-31 Giulio Guerrieri

This paper concerns the explicit treatment of substitutions in the lambda calculus. One of its contributions is the simplification and rationalization of the suspension calculus that embodies such a treatment. The earlier version of this…

Logic in Computer Science · Computer Science 2007-05-23 Andrew Gacek , Gopalan Nadathur

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…

Programming Languages · Computer Science 2022-06-01 Joseph W. N. Paulus , Daniele Nantes-Sobrinho , Jorge A. Pérez

We define the syntax and reduction relation of a recursively typed lambda calculus with a parallel case-function (a parallel conditional). The reduction is shown to be confluent. We interpret the recursive types as information systems in a…

Logic in Computer Science · Computer Science 2008-06-12 Fritz Müller

We present a linear functional calculus with both the safety guarantees expressible with linear types and the rich language of combinators and composition provided by functional programming. Unlike previous combinations of linear typing and…

Programming Languages · Computer Science 2017-03-17 J. Garrett Morris

Compilers use control flow graph (CFG) representations of low-level programs because they are suited to program analysis and optimizations. However, formalizing the behavior and metatheory of CFG programs is non-trivial: CFG programs don't…

Programming Languages · Computer Science 2018-05-16 Dmitri Garbuzov , William Mansky , Christine Rizkallah , Steve Zdancewic

The call-by-need lambda calculus provides an equational framework for reasoning syntactically about lazy evaluation. This paper examines its operational characteristics. By a series of reasoning steps, we systematically unpack the…

Programming Languages · Computer Science 2015-07-01 Ronald Garcia , Andrew Lumsdaine , Amr Sabry

The extensive deployment of probabilistic algorithms has radically changed our perspective on several well-established computational notions. Correctness is probably the most basic one. While a typical probabilistic program cannot be said…

Logic in Computer Science · Computer Science 2025-02-17 Francesco A. Genco , Giuseppe Primiero

This invited paper presents an overview of an ongoing research program aimed at extending the Curry-Howard-Lambek correspondence to quantum computation. We explore two key frameworks that provide both logical and computational foundations…

Logic in Computer Science · Computer Science 2025-06-26 Alejandro Díaz-Caro

One perspective on quantum algorithms is that they are classical algorithms having access to a special kind of memory with exotic properties. This perspective suggests that, even in the case of quantum algorithms, the control flow notions…

Logic in Computer Science · Computer Science 2018-04-04 Amr Sabry , Benoît Valiron , Juliana Kaizer Vizzotto

We propose a simple calculus for processing data streams (infinite flows of data series), represented by finite sets of equations built on stream operators. Furthermore, functions defining streams are regularly corecursive, that is, cyclic…

Programming Languages · Computer Science 2021-08-03 Davide Ancona , Pietro Barbieri , Elena Zucca

Regular functions from infinite words to infinite words can be equivalently specified by MSO-transducers, streaming $\omega$-string transducers as well as deterministic two-way transducers with look-ahead. In their one-way restriction, the…

Formal Languages and Automata Theory · Computer Science 2024-09-19 V. Dave , E. Filiot , S. Krishna , N. Lhote

We introduce two extensions of the $\lambda$-calculus with a probabilistic choice operator, $\Lambda_\oplus^{cbv}$ and $\Lambda_\oplus^{cbn}$, modeling respectively call-by-value and call-by-name probabilistic computation. We prove that…

Logic in Computer Science · Computer Science 2019-05-13 Claudia Faggian , Simona Ronchi della Rocca

We describe a process calculus featuring high level constructs for component-oriented programming in a distributed setting. We propose an extension of the higher-order pi-calculus intended to capture several important mechanisms related to…

Programming Languages · Computer Science 2009-09-04 Daniel Hirschkoff , Aurélien Pardon , Tom Hirschowitz , Samuel Hym , Damien Pous

In this paper we invite the reader to a journey through three lambda calculi with resource control: the lambda calculus, the sequent lambda calculus, and the lambda calculus with explicit substitution. All three calculi enable explicit…

Logic · Mathematics 2013-06-11 Silvia Ghilezan , Jelena Ivetic , Pierre Lescanne , Silvia Likavec