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

Please sign up or login with your details

Forgot password? Click here to reset

Sign in with Google

×

Use your Google Account to sign in to DeepAI

×

Consider DeepAI Pro