The Functional Machine Calculus II: Semantics

  title={The Functional Machine Calculus II: Semantics},
  author={Chris Barrett and Willem B. Heijltjes and Guy McCusker},
The Functional Machine Calculus (FMC), recently introduced by the authors, is a generalization of the lambda-calculus which may faithfully encode the effects of higher-order mutable store, I/O and probabilistic/non-deterministic input. Significantly, it remains confluent and can be simply typed in the presence of these effects. In this paper, we explore the denotational semantics of the FMC. We have three main contri-butions: first, we argue that its syntax – in which both effects and lambda-calculus… 



Classical logic, continuation semantics and abstract machines

The goal of this paper is to demonstrate that denotational semantics is useful for operational issues like implementation of functional languages by abstract machines by studying the case of extensional untyped call-by-name λ-calculus with Felleisen's control operator.

The formal semantics of programming languages - an introduction

  • G. Winskel
  • Computer Science
    Foundation of computing series
  • 1993
The Formal Semantics of Programming Languages" provides the basic mathematical techniques necessary for those who are beginning a study of semantics and logics of programming languages, including the vital area of concurrency.

Decomposing Typed Lambda Calculus into a Couple of Categorical Programming Languages

We give two categorical programming languages with variable arrows and associated abstraction/reduction mechanisms, which extend the possibility of categorical programming [Hag87, CF92] in practice.

Operational reasoning for functions with local state

The method is based upon the use of a certain kind of logical relation parameterised by relations between program states and yields a proof of the best known context lemma for this kind of language— the Mason-Talcott ‘ciu’ theorem.

Relational Properties of Domains

  • A. Pitts
  • Computer Science, Mathematics
    Inf. Comput.
  • 1996
It is shown how the initiality/finality property of invariant relations can be specialized to yield an induction principle for admissible subsets of recursively defined domains, generalizing the principle of structural induction for inductively defined sets.

Strong Normalization from Weak Normalization by Translation into the Lambda-I-Calculus

A systematic account of techniques to infer strong normalization from weak normalization that make use of syntactic translations from λ-terms to λI-terms and a main contribution of the paper is to compare the techniques of Gandy, Klop, and Girard in detail.

Closed Freyd-and -categories

We give two classes of sound and complete models for the computational-calculus, or c-calculus. For the rst, we generalise the notion of cartesian closed category to that of closed Freyd-category.

Functorial String Diagrams for Reverse-Mode Automatic Differentiation

To give an efficient yet principled implementation of the AD algorithm, a sound and complete representation of hierarchical string diagrams is defined as a class of hierarchical hypergraphs the authors call hypernets.