Abstract
This paper suggests functional programming languages with coinductive types as suitable devices for prototyping process calculi. The proposed approach is independent of any particular process calculus and makes explicit the different ingredients present in the design of any such calculi. In particular structural aspects of the underlying behaviour model become clearly separated from the interaction structure which defines the synchronisation discipline. The approach is illustrated by the detailed development in Charity of an interpreter for a family of process languages.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
P. Aczel. Final universes of processes. In Brooks et al, editor, Proc. Math. Foundations of Programming Semantics. Springer Lect. Notes Comp. Sci. (802), 1993. 195
L. S. Barbosa. Process calculi à la Bird-Meertens. In CMCS’01 — Workshop on Coalgebraic Methods in Computer Science, pages 47–66, Genova, April 2001. ENTCS, volume 44.4, Elsevier. 184, 195
R. Bird and O. Moor. The Algebra of Programming. Series in Computer Science. Prentice-Hall International, 1997. 183
R. Cockett and T. Fukushima. About Charity. Yellow Series Report No. 92/480/18, Dep. Computer Science, University of Calgary, June 1992. 183
R. Cockett and D. Spencer. Strong categorical datatypes I. In R.A.G. Seely, editor, Proceedings of Int. Summer Category Theory Meeting, Montréal, Québec, 23–30 June 1991, pages 141–169. AMS, CMS Conf. Proceedings 13, 1992. 185, 193
T. Hagino. A typed lambda calculus with categorical type constructors. In D.H. Pitt, A. Poigné, and D.E. Rydeheard, editors, Category Theory and Computer Science, pages 140–157. Springer Lect. Notes Comp. Sci. (283), 1987. 185
B. Jacobs. Objects and classes, co-algebraically. In C. Lengauer B. Freitag, C.B. Jones and H.-J. Schek, editors, Object-Orientation with Parallelism and Persistence, pages 83–103. Kluwer Academic Publishers, 1996. 185
P. Jansson and J. Jeuring. PolyP-a polytypic programming language extension. In POPL’97: The 24th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pages 470–482. ACM Press, 1997. 183
R.B. Kieburtz. Codata and comonads in Haskell. Unpublished manuscript, 1998. 185
A. Kock. Strong functors and monoidal monads. Archiv für Mathematik, 23:113–120, 1972. 185
M. Lenisa. Themes in Final Semantics. PhD thesis, Universita de Pisa-Udine, 1998. 195
L. Meertens. Paramorphisms. Formal Aspects of Computing, 4(5):413–425, 1992. 194
E. Meijer, M. Fokkinga, and R. Paterson. Functional programming with bananas, lenses, envelopes and barbed wire. In J. Hughes, editor, Proceedings of the 1991 ACM Conference on Functional Programming Languages and Computer Architecture, pages 124–144. Springer Lect. Notes Comp. Sci. (523), 1991. 185
R. Milner. Communication and Concurrency. Series in Computer Science. Prentice-Hall International, 1989. 186, 187, 191
R. Milner, J. Parrow, and D. Walker. A calculus of mobile processes (parts I and II). Information and Computation, 100(1):1–77, 1992. 195
J. Rutten. Universal coalgebra: A theory of systems. Theor. Comp. Sci., 249(1):3–80, 2000. (Revised version of CWI Techn. Rep. CS-R9652, 1996). 184, 185
D. Turi and J. Rutten. On the foundations of final coalgebra semantics: non-well-founded sets, partial orders, metric spaces. Mathematical Structures in Computer Science, 8(5):481–540, 1998. 185
U. Wolter. A coalgebraic introduction to csp. In II Workshop on Coalgebraic Methods in Computer Science. ENTCS, volume 19, Elsevier, 1999. 195
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2002 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Barbosa, L.S., Oliveira, J.N. (2002). Coinductive Interpreters for Process Calculi. In: Hu, Z., Rodríguez-Artalejo, M. (eds) Functional and Logic Programming. FLOPS 2002. Lecture Notes in Computer Science, vol 2441. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45788-7_11
Download citation
DOI: https://doi.org/10.1007/3-540-45788-7_11
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-44233-2
Online ISBN: 978-3-540-45788-6
eBook Packages: Springer Book Archive