Skip to main content

PiStache: Implementing π-Calculus in Scala

  • Conference paper
Formal Methods, Foundations and Applications (SBMF 2011)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 7021))

Included in the following conference series:

  • 363 Accesses

Abstract

π-calculus is a pioneer theory for concurrent and reconfigurable agent systems. It has been widely used as foundation (semantics) for other theories and languages aiming at representing the computational phenomenon of changing systems’ behaviour at runtime. In services-oriented applications for example, reconfiguration is highly required due to the needs of configuring systems accordingly to local contexts. Today, a set of researches are devoted to extending π-calculus features to reconcile concepts behind web-services applications. However, a problem still remains: how to simulate π-agents to have insights on the real behaviour of the specified system? The reconfiguration features embedded in π-calculus enrich its expressiveness but impose a more elaborate semantics, making its implementation a challenging task. The current work presents an implementation of all π-calculus core elements with which one can define agents and simulate them. Such implementation is given as a Domain Specific Language (DSL) in Scala.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 54.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 69.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

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Bengtson, J., Johansson, M., Parrow, J., Victor, B.: Psi-calculi: a framework for mobile processes with nominal data and logic. Logical Methods in Computer Science 7(1) (2011)

    Google Scholar 

  2. Carbone, M., Honda, K., Yoshida, N., Milner, R.: Structured communication-centred programming for web services. In: De Nicola, R. (ed.) ESOP 2007. LNCS, vol. 4421, pp. 2–17. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  3. Cremet, V., Odersky, M.: Pilib: A hosted language for pi-calculus style concurrency. In: Lengauer, C., Batory, D.S., Consel, C., Odersky, M. (eds.) Domain-Specific Program Generation. LNCS, vol. 3016, pp. 180–195. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  4. Hoare, C.A.R.: Communicating Sequential Processes. Communications of the ACM (1978)

    Google Scholar 

  5. Milner, R.: Communicating and Mobile Systems: the Pi-Calculus. Cambridge University Press (1999)

    Google Scholar 

  6. Milner, R., Parrow, J., Walker, D.: A Calculus of Mobile Processes, Part I. I and II. Information and Computation 100 (1989)

    Google Scholar 

  7. Odersky, M., Spoon, L., Venners, B.: Programming in Scala: A Comprehensive Step-by-step Guide. Artima Incorporation (2008)

    Google Scholar 

  8. Okasaki, C.: Purely Functional Data Structures. Cambridge University Press (1998)

    Google Scholar 

  9. Parrow, J.: An Introduction to the pi-Calculus. In: Handbook of Process Algebra, pp. 479–543. Elsevier (2001)

    Google Scholar 

  10. Pierce, B.: Types and Programming Languages. MIT Press (2002)

    Google Scholar 

  11. Pierce, B.C., Turner, D.N.: Pict: A Programming Language Based on the Pi-Calculus. In: Proof, Language and Interaction: Essays in Honour of Robin Milner. MIT Press (1997)

    Google Scholar 

  12. Pierce, B.C., Turner, D.N.: Pict: a programming language based on the Pi-Calculus, pp. 455–494. MIT Press, Cambridge (2000), http://portal.acm.org/citation.cfm?id=345868.345924

    Google Scholar 

  13. Schinz, M., Haller, P.: A Scala Tutorial for Java Programmers (2009), http://www.scala-lang.org/node/198

  14. Welch, P., Barnes, F.: Communicating Mobile Processes: introducing occam-pi. In: 25 Years of CSP. Springer, Heidelberg (2005)

    Google Scholar 

  15. Zhou, J., Zeng, G.: Describing and reasoning on the composition of grid services using pi-calculus. In: International Conference on Computer and Information Technology, p. 48 (2006)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Matiello, P., de Melo, A.C.V. (2011). PiStache: Implementing π-Calculus in Scala. In: Simao, A., Morgan, C. (eds) Formal Methods, Foundations and Applications. SBMF 2011. Lecture Notes in Computer Science, vol 7021. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-25032-3_6

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-25032-3_6

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-25031-6

  • Online ISBN: 978-3-642-25032-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics