Skip to main content

The Buffered π-Calculus: A Model for Concurrent Languages

  • Conference paper
  • 1059 Accesses

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 7810))

Abstract

Message-passing based concurrent languages are widely used in developing large distributed and coordination systems. This paper presents the buffered π-calculus — a variant of the π-calculus where channel names are classified into buffered and unbuffered: communication along buffered channels is asynchronous, and remains synchronous along unbuffered channels. We show that the buffered π-calculus can be fully simulated in the polyadic π-calculus with respect to strong bisimulation. In contrast to the π-calculus which is hard to use in practice, the new language enables easy and clear modeling of practical concurrent languages. We encode two real-world concurrent languages in the buffered π-calculus: the (core) Go language and the Core Erlang. Both encodings are fully abstract with respect to weak bisimulations.

Partially supported by Natural Science Foundation of China (61173033, 61033002, 61161130530, 61100053) and the Opening Fund of Top Key Discipline of Computer Software and Theory in Zhejiang Provincial Colleges at Zhejiang Normal University.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Armstrong, J.L.: The Development of Erlang. In: ICFP, pp. 196–203 (1997)

    Google Scholar 

  2. Beauxis, R., Palamidessi, C., Valencia, F.D.: On the Asynchronous Nature of the Asynchronous π-Calculus. In: Degano, P., De Nicola, R., Meseguer, J. (eds.) Concurrency, Graphs and Models. LNCS, vol. 5065, pp. 473–492. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  3. Boudol, G.: Asynchrony and the π-calculus. Rapport de recherche RR-1702, INRIA (1992), http://hal.inria.fr/inria-00076939

  4. Carlsson, R.: An introduction to Core Erlang. In: PLI 2001 Erlang Workshop (2001)

    Google Scholar 

  5. Deng, X., Zhang, Y., Deng, Y., Zhong, F.: The Buffered π-Calculus: A Model for Concurrent Languages (Full version) (2012), http://arxiv.org/abs/1212.6183

  6. Google Inc.: The Go Programming Language Specification (2012), http://golang.org/ref/spec

  7. Hoare, C.A.R.: Communicating Sequential Processes. Communications of the ACM 21(8), 666–677 (1978)

    Article  MathSciNet  MATH  Google Scholar 

  8. Honda, K., Tokoro, M.: An Object Calculus for Asynchronous Communication. In: America, P. (ed.) ECOOP 1991. LNCS, vol. 512, pp. 133–147. Springer, Heidelberg (1991)

    Chapter  Google Scholar 

  9. Milner, R.: Communication and Concurrency. PHI Series in computer science. Prentice Hall (1989)

    Google Scholar 

  10. Milner, R.: The Polyadic π-Calculus: a tutorial. Tech. Rep. ECS-LFCS-91-180, Computer Science Dept., University of Edinburgh (1991)

    Google Scholar 

  11. Milner, R., Parrow, J., Walker, D.: A Calculus of Mobile Processes, Parts I and II. Information and Computation 100(1), 1–77 (1992)

    Article  MathSciNet  MATH  Google Scholar 

  12. Noll, T., Roy, C.K.: Modeling Erlang in the π-calculus. In: Erlang Workshop, pp. 72–77 (2005)

    Google Scholar 

  13. Roy, C.K., Noll, T., Roy, B., Cordy, J.R.: Towards Automatic Verification of Erlang Programs by π-Calculus Translation. In: Erlang Workshop, pp. 38–50 (2006)

    Google Scholar 

  14. Sangiorgi, D., Walker, D.: The π-Calculus: A Theory of Mobile Processes. Cambridge University Press (2001)

    Google Scholar 

  15. Walker, D.: Objects in the π-Calculus. Information and Computation 116(2), 253–271 (1995)

    Article  MathSciNet  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Deng, X., Zhang, Y., Deng, Y., Zhong, F. (2013). The Buffered π-Calculus: A Model for Concurrent Languages. In: Dediu, AH., Martín-Vide, C., Truthe, B. (eds) Language and Automata Theory and Applications. LATA 2013. Lecture Notes in Computer Science, vol 7810. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-37064-9_23

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-37064-9_23

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-37063-2

  • Online ISBN: 978-3-642-37064-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics