A Domain Semantics for Higher-Order Recursive Processes

02/05/2020
by   Ryan Kavanagh, et al.
0

The polarized SILL programming language uniformly integrates functional programming and session-based concurrency. It supports recursion, asynchronous and synchronous communication, and higher-order programs that communicate processes. We build on work by Atkey to give the first denotational semantics for a language with these features. Session types are interpreted as domains of bidirectional communications. We use polarity to naturally relate these to pairs of domains of unidirectional communications. Processes denote continuous functions between domains of unidirectional communication. Semantic composition of processes is given by a trace operator. Our semantics validates many expected program equivalences.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
04/02/2021

Fairness and Observed Communication Semantics for Session-Typed Languages

Observed communication semantics provide an intuitive notion of equivale...
research
04/24/2018

Connectors meet Choreographies

We present Cho-Reo-graphies (CR), a new language model that unites two p...
research
08/31/2020

Substructural Observed Communication Semantics

Session-types specify communication protocols for communicating processe...
research
03/08/2023

Alice or Bob?: Process Polymorphism in Choreographies

We present PolyChorλ, a language for higher-order functional choreograph...
research
06/17/2011

Extensional Higher-Order Logic Programming

We propose a purely extensional semantics for higher-order logic program...
research
07/15/2020

λ_S: Computable semantics for differentiable programming with higher-order functions and datatypes

Deep learning is moving towards increasingly sophisticated optimization ...
research
06/30/2021

A Domain-Theoretic Approach to Statistical Programming Languages

We give a domain-theoretic semantics to a statistical programming langua...

Please sign up or login with your details

Forgot password? Click here to reset