Type-Safe Eventful Sessions in Java

Hu, R., Kouzapas, D., Pernet, O., Yoshida, N. and Honda, K. (2010) Type-Safe Eventful Sessions in Java. In: ECOOP 2010 - Object-Oriented Programming, 24th European Conference, Maribor, Slovenia, 21-25 June 2010, pp. 329-353. ISBN 9783642141065 (doi: 0.1007/978-3-642-14107-2_16)

[img] Text
101380.pdf - Accepted Version

442kB

Publisher's URL: http://dx.doi.org/10.1007/978-3-642-14107-2_16

Abstract

Event-driven programming is a major paradigm in concurrent and communication-based programming, and a widely adopted approach to building scalable high-concurrency servers. However, traditional event-driven programs are more difficult to read, write and verify than their multi-threaded counterparts due to low-level APIs and fragmentation of control flow across disjoint event handlers. This paper presents a Java language extension and a novel type discipline for type-safe event-driven session programming that counters the problems of traditional event-based programming with abstractions and safety guarantees based on session types, while retaining the expressiveness and performance characteristics of events. The type discipline extends session types and their primitives with asynchronous input, session typecase and session set types, ensuring eventhandling safety and event progress in addition to the standard type soundness and communication safety. The advantages, expressiveness and performance of event-driven session programming are demonstrated through a range of examples and benchmarks, including a session-typed SMTP server.

Item Type:Conference Proceedings
Status:Published
Refereed:Yes
Glasgow Author(s) Enlighten ID:Kouzapas, Mr Dimitrios
Authors: Hu, R., Kouzapas, D., Pernet, O., Yoshida, N., and Honda, K.
Subjects:Q Science > QA Mathematics > QA75 Electronic computers. Computer science
College/School:College of Science and Engineering > School of Computing Science
ISBN:9783642141065
Copyright Holders:Copyright © 2010 Springer Verlag
First Published:First published in Proceedings, ECOOP 2010 – Object-Oriented Programming 24th European Conference
Publisher Policy:Reproduced in accordance with the copyright policy of the publisher.

University Staff: Request a correction | Enlighten Editors: Update this record