2010
DOI: 10.1007/978-3-642-14107-2_16
|View full text |Cite
|
Sign up to set email alerts
|

Type-Safe Eventful Sessions in Java

Abstract: 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 programm… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
91
0

Year Published

2011
2011
2021
2021

Publication Types

Select...
6

Relationship

3
3

Authors

Journals

citations
Cited by 46 publications
(91 citation statements)
references
References 24 publications
0
91
0
Order By: Relevance
“…We often omit ∆ if it is clear from the context. The typing system is similar with [2,13], and can be found in online Appendix [23]. We say that ∆ well configured if s : S ∈ ∆ , then s : S ∈ ∆ .…”
Section: Types and Typingmentioning
confidence: 99%
See 3 more Smart Citations
“…We often omit ∆ if it is clear from the context. The typing system is similar with [2,13], and can be found in online Appendix [23]. We say that ∆ well configured if s : S ∈ ∆ , then s : S ∈ ∆ .…”
Section: Types and Typingmentioning
confidence: 99%
“…As will be discussed later, determinacy plays an essential role in our proofs while sequentiality is for simplicity of the mapping. We use the standard "select" primitive represented as a process, called selector [13]. It stores a collection of session channels, with each channel associated with an environment, binding variables to values.…”
Section: Definition 41 (Server)mentioning
confidence: 99%
See 2 more Smart Citations
“…Our previous work [29] applied Session Java (SJ) [19,20], Java enhanced with session types, to parallel algorithms. SJ treats only binary session types [17] and cannot guarantee deadlock freedom and global progress between more than two processes.…”
Section: Related Work and Further Topicsmentioning
confidence: 99%