Advertisement

Structured Interactional Exceptions in Session Types

  • Marco Carbone
  • Kohei Honda
  • Nobuko Yoshida
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5201)

Abstract

We propose an interactional generalisation of structured exceptions based on the session type discipline. Interactional exceptions allow communicating peers to asynchronously and collaboratively escape from the middle of a dialogue and reach another in a coordinated fashion, under an arbitrary nesting of exceptions. New exception types guarantee communication safety and offer a precise type-abstraction of advanced conversation patterns found in practice. Protocols for coordinating normal and exceptional exit among asynchronously running sessions are introduced. The liveness property established under these protocols guarantees consistency of coordinated exception handling among communicating peers.

Keywords

Operational Semantic Exception Handling Liveness Property Session Type Subject Reduction 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Advanced Message Queuing Protocol, http://www.iona.com/opensource/amqp/
  2. 2.
  3. 3.
    Bocchi, L., Laneve, C., Zavattaro, G.: A calculus for long-running transactions. In: Najm, E., Nestmann, U., Stevens, P. (eds.) FMOODS 2003. LNCS, vol. 2884, pp. 124–138. Springer, Heidelberg (2003)Google Scholar
  4. 4.
    Bonelli, E., Compagnoni, A.: Multipoint Session Types for a Distributed Calculus. In: Barthe, G., Fournet, C. (eds.) TGC 2007. LNCS, vol. 4912, pp. 240–256. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  5. 5.
    Boreale, M., Bruni, R., Nicola, R.D., Loreti, M.: Sessions and pipelines for structured service programming. In: Barthe, G., de Boer, F.S. (eds.) FMOODS 2008. LNCS, vol. 5051, pp. 19–38. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  6. 6.
    Carbone, M., Honda, K., Yoshida, N.: Structured Communication-Centred Programming for Web Services. In: De Nicola, R. (ed.) ESOP 2007. LNCS, vol. 4421, pp. 2–17. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  7. 7.
    Dezani-Ciancaglini, M., de Liguoro, U., Yoshida, N.: On Progress for Structured Communications. In: Barthe, G., Fournet, C. (eds.) TGC 2007. LNCS, vol. 4912, pp. 222–239. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  8. 8.
    Gay, S., Hole, M.: Subtyping for Session Types in the Pi-Calculus. Acta Informatica 42(2/3), 191–225 (2005)MATHCrossRefMathSciNetGoogle Scholar
  9. 9.
    Gay, S., Vasconcelos, V.T.: Asynchronous functional session types. TR 2007–251. University of Glasgow (May 2007)Google Scholar
  10. 10.
    Honda, K., Vasconcelos, V.T., Kubo, M.: Language Primitives and Type Disciplines for Structured Communication-based Programming. In: Hankin, C. (ed.) ESOP 1998. LNCS, vol. 1381, pp. 22–138. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  11. 11.
    Honda, K., Yoshida, N., Carbone, M.: Web Services, Mobile Processes and Types. The Bulletin of the European Association for Theoretical Computer Science 91, 165–185 (2007)Google Scholar
  12. 12.
    Honda, K., Yoshida, N., Carbone, M.: Multiparty Asynchronous Session Types. In: POPL 2008, pp. 273–284. ACM, New York (2008)CrossRefGoogle Scholar
  13. 13.
    Hu, R., Yoshida, N., Honda, K.: Session-Based Distributed Programming in Java. In: Vitek, J. (ed.) ECOOP 2008. LNCS, vol. 5142. Springer, Heidelberg (2008)Google Scholar
  14. 14.
    International Organization for Standardization ISO, 2 UNIversal Financial Industry message scheme (2002), http://www.iso20022.org/index.cfm?item_id=56664#interest
  15. 15.
    Lapadula, A., Pugliese, R., Tiezzi, F.: A calculus for orchestration of web services. In: De Nicola, R. (ed.) ESOP 2007. LNCS, vol. 4421, pp. 33–47. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  16. 16.
    Marlow, S., Jones, S.L.P., Moran, A., Reppy, J.H.: Asynchronous exceptions in Haskell. In: PLDI, pp. 274–285. ACM, New York (2001)CrossRefGoogle Scholar
  17. 17.
    Takeuchi, K., Honda, K., Kubo, M.: An Interaction-based Language and its Typing System. In: Halatsis, C., Philokyprou, G., Maritsas, D., Theodoridis, S. (eds.) PARLE 1994. LNCS, vol. 817, pp. 398–413. Springer, Heidelberg (1994)Google Scholar
  18. 18.
    Vieira, H., Caires, L., Seco, J.: The conversation calculus: A model of service oriented computation. In: Drossopoulou, S. (ed.) ESOP 2008. LNCS, vol. 4960, pp. 269–283. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  19. 19.
    Web Services Choreography Working Group, http://www.w3.org/2002/ws/chor/
  20. 20.
    Xu, J., Romanovsky, A.B., Randell, B.: Concurrent exception handling and resolution in distributed object systems. IEEE Trans. Parallel Distrib. Syst. 11(10), 1019–1032 (2000)CrossRefGoogle Scholar
  21. 21.
    Yoshida, N., Vasconcelos, V.T.: Language primitives and type disciplines for structured communication-based programming revisit. ENTCS 171(4), 73–93 (2007)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Marco Carbone
    • 1
  • Kohei Honda
    • 1
  • Nobuko Yoshida
    • 2
  1. 1.Queen Mary, University of London 
  2. 2.Imperial College London 

Personalised recommendations