Theoretical Computer Science
POPL '90 Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
On the relations computable by a class of concurrent automata
POPL '90 Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Handbook of theoretical computer science (vol. B)
The geometry of optimal lambda reduction
POPL '92 Proceedings of the 19th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
The expressive power of indeterminate dataflow primitives
Information and Computation
Categorical combinators, sequential algorithms, and functional programming (2nd ed.)
Categorical combinators, sequential algorithms, and functional programming (2nd ed.)
YALE: yet another lambda evaluator based on interaction nets
ICFP '98 Proceedings of the third ACM SIGPLAN international conference on Functional programming
The optimal implementation of functional programming languages
The optimal implementation of functional programming languages
A Calculus for Interaction Nets
PPDP '99 Proceedings of the International Conference PPDP'99 on Principles and Practice of Declarative Programming
From Term Rewriting to Generalised Interaction Nets
PLILP '96 Proceedings of the 8th International Symposium on Programming Languages: Implementations, Logics, and Programs
Non-deterministic interaction nets
Non-deterministic interaction nets
Mathematical Structures in Computer Science
Recursive Functions with Pattern Matching in Interaction Nets
Electronic Notes in Theoretical Computer Science (ENTCS)
Hi-index | 0.00 |
Interaction nets are graphical rewrite systems which have been successfully used to implement various efficient evaluation strategies in the λ-calculus (including optimal reduction). However, they are intrinsically deterministic and this prevents from applying these techniques to concurrent languages where non-determinism plays a key role. In this paper we show that a minimal extension -- the addition of one agent in the spirit of McCarthy's amb operator -- allows us to define non-deterministic processes such as angelic and infinity merge, and more generally, to encode process calculi and wide classes of term rewriting systems (including systems defining parallel functions). We show that Alexiev's INMPP (interaction nets with multiple principal ports) can be encoded, for which we give a textual calculus and a type system that ensures the absence of deadlock.