A Concurrent Semantics of Static Exceptions in a Parallel Programming Language

  • Hanna Klaudel
  • Franck Pommereau
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2075)


This paper aims at introducing a mechanism of exceptions in a parallel programming language, giving them a formal concurrent semantics in terms of preemptible and composable high-level Petri nets. We show that, combined with concurrency, exceptions can be used as a basis for other preemption related constructs. We illustrate this idea by presenting a generalized timeout and a simple UNIX-like system of concurrent preemptible threads.


Exceptions Petri nets semantics parallel programming 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    E. Best, R. Devillers, and J. G. Hall. The box calculus: a new causal algebra with multi-label communication. LNCS 609:21–69, 1992.Google Scholar
  2. [2]
    E. Best, W. Fraczak, R. Hopkins, H. Klaudel, and E. Pelz. M-nets: An algebra of high-level Petri nets, with an application to the semantics of concurrent programming languages. Acta Informatica, 35, 1998.Google Scholar
  3. [3]
    E. Best and R. P. Hopkins. B(PN)2-A basic Petri net programming notation. PARLE’93, LNCS 694:379–390, 1993.Google Scholar
  4. [4]
    R. Devillers, H. Klaudel, and R.-C Riemann. General refinement for high-level Petri nets. FST&TCS’97, LNCS 1346:297–311, 1997.Google Scholar
  5. [5]
    R. Devillers, H. Klaudel, and R.-C. Riemann. General parameterised refinement and recursion for the M-net calculus. Theoretical Computer Science, to appear (available at
  6. [6]
    H. J. Genrich, K. Lautenbach, and P. S. Thiagarajan. Elements of General Net Theory. Net Theory and Applications, Proceedings of the Advanced Course on General Net Theory of Processes and Systems, LNCS 84:21–163, 1980.Google Scholar
  7. [7]
    B. Grahlmann and E. Best. PEP-more than a Petri net tool. LNCS 1055, 1996.Google Scholar
  8. [8]
    M. Kishinevsky, J. Cortadella, A. Kondratyev, L. Lavagno, A. Taubin and A. Yakovlev. Coupling asynchrony and interrupts: place chart nets and their synthesis. ICATPN’97, LNCS 1248:328–347, 1997.Google Scholar
  9. [9]
    H. Klaudel. Compositional high-level Petri net semantics of a parallel programming language with procedures. Science of Computer Programming, to appear (available at http://
  10. [10]
    H. Klaudel and F. Pommereau. Asynchronous links in the PBC and M-nets. ASIAN’99, LNCS 1742:190–200, 1999.Google Scholar
  11. [11]
    H. Klaudel and F. Pommereau. A concurrent and compositional Petri net semantics of preemption. IFM’2000, LNCS 1945:318–337, 2000.Google Scholar
  12. [12]
    P. A. Lee and T. Anderson. Fault tolerance: principle and practice. Springer, 1990.Google Scholar
  13. [13]
    R. Milner. A calculus of communicating systems. LNCS 92, 1980.zbMATHGoogle Scholar
  14. [14]
    B. Randell, A. Romanovsky, R. J. Stroud, J. Xu and A. F. Zorzo. Coordinated Atomic Actions: from concept to implementation. Submitted to IEEE TC Special issue.Google Scholar
  15. [15]
    A. Romanovsky. Practical exception handling and resolution in concurrent programs. Computer Languages, v. 23, N1, 1997, pp. 43–58.CrossRefGoogle Scholar
  16. [16]
    A. Romanovsky. Extending conventional languages by distributed/concurrent exception resolution. Journal of systems architecture, Elsevier science, 2000Google Scholar
  17. [17]
    J. Xu, A. Romanovsky and B. Randell. Coordinated Exception Handling in Distributed Object-Oriented Systems: Improved Algorithm, Correctness and Implementation. Computing Dept., University of Newcastle upon Tyne, TR 596, 1997.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2001

Authors and Affiliations

  • Hanna Klaudel
    • 1
  • Franck Pommereau
    • 1
  1. 1.LACLUniversité Paris 12CréteilFrance

Personalised recommendations