We study termination of programs in concurrent higher-order languages. A higher-order concurrent calculus combines features of the λ-calculus and of the message-passing concurrent calculi. However, in contrast with the λ-calculus, a simply-typed discipline need not guarantee termination and, in contrast with message-passing calculi such as the ππ-calculus, divergence can be obtained even without a recursion (or replication) construct. We first consider a higher-order calculus where only processes can be communicated. We propose a type system for termination that borrows ideas from termination in rewriting systems (and following the approach to termination in the π-calculus in [3]). We then show how this type system can be adapted to accommodate higher-order functions in messages. Finally, we address termination in a richer calculus that includes localities and a passivation construct, as well as name-passing communication. We illustrate the expressiveness of the type systems on a few examples.

R. Demangeon, D. Hirschkoff, D. Sangiorgi (2010). Termination in higher-order concurrent calculi. JOURNAL OF LOGIC AND ALGEBRAIC PROGRAMMING, 79(7), 550-577 [10.1016/j.jlap.2010.07.007].

Termination in higher-order concurrent calculi

SANGIORGI, DAVIDE
2010

Abstract

We study termination of programs in concurrent higher-order languages. A higher-order concurrent calculus combines features of the λ-calculus and of the message-passing concurrent calculi. However, in contrast with the λ-calculus, a simply-typed discipline need not guarantee termination and, in contrast with message-passing calculi such as the ππ-calculus, divergence can be obtained even without a recursion (or replication) construct. We first consider a higher-order calculus where only processes can be communicated. We propose a type system for termination that borrows ideas from termination in rewriting systems (and following the approach to termination in the π-calculus in [3]). We then show how this type system can be adapted to accommodate higher-order functions in messages. Finally, we address termination in a richer calculus that includes localities and a passivation construct, as well as name-passing communication. We illustrate the expressiveness of the type systems on a few examples.
2010
R. Demangeon, D. Hirschkoff, D. Sangiorgi (2010). Termination in higher-order concurrent calculi. JOURNAL OF LOGIC AND ALGEBRAIC PROGRAMMING, 79(7), 550-577 [10.1016/j.jlap.2010.07.007].
R. Demangeon; D. Hirschkoff; D. Sangiorgi
File in questo prodotto:
Eventuali allegati, non sono esposti

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/11585/100232
 Attenzione

Attenzione! I dati visualizzati non sono stati sottoposti a validazione da parte dell'ateneo

Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 7
  • ???jsp.display-item.citation.isi??? 6
social impact