In the paper "Lightweight Session Programming in Scala", we introduce a "lightweight" integration of session types in the Scala programming language, based on (1) a formal type-level encoding, and (2) a library implementation of linear I/O channels, called lchannels, providing a convenient API for session-based programming, and supporting both local and distributed communication. This artifact is the source code of lchannels, with all the examples and benchmarks discussed in the paper
This is the companion artifact for the ESOP23 paper Safe Session-Based Concurrency with Shared Line...
Session types describe communication protocols, capturing both the type and the order of messages. R...
AbstractThere is an impedance mismatch between message-passing concurrency and virtual machines, suc...
In the paper "Lightweight Session Programming in Scala", we introduce a "lightweight" integration of...
Designing, developing and maintaining concurrent applications is an error-prone and time-consuming t...
Designing, developing and maintaining concurrent applications is an error-prone and time-consuming t...
This artifact contains a version of the Scribble tool that, given a protocol specification with mult...
In high-level programming languages, programmers do not need to worry about certain implementation d...
We present Oven: a toolset to assure safety and liveness of communication protocols among threads in...
Multitier programming languages reduce the complexity of developing distributed systems by developin...
Aliasing is a known source of challenges in the context of imperative object-oriented languages, whi...
Over the past decade, the Scala community has shown great interest in using type-level programming t...
We propose the introduction of a special kind of traits that implement methods implicitly invoked wh...
Construction and analysis of distributed systems is difficult. Multiparty session types (MPST) const...
Abstract. This paper introduces a programming framework based on the theory of session types for saf...
This is the companion artifact for the ESOP23 paper Safe Session-Based Concurrency with Shared Line...
Session types describe communication protocols, capturing both the type and the order of messages. R...
AbstractThere is an impedance mismatch between message-passing concurrency and virtual machines, suc...
In the paper "Lightweight Session Programming in Scala", we introduce a "lightweight" integration of...
Designing, developing and maintaining concurrent applications is an error-prone and time-consuming t...
Designing, developing and maintaining concurrent applications is an error-prone and time-consuming t...
This artifact contains a version of the Scribble tool that, given a protocol specification with mult...
In high-level programming languages, programmers do not need to worry about certain implementation d...
We present Oven: a toolset to assure safety and liveness of communication protocols among threads in...
Multitier programming languages reduce the complexity of developing distributed systems by developin...
Aliasing is a known source of challenges in the context of imperative object-oriented languages, whi...
Over the past decade, the Scala community has shown great interest in using type-level programming t...
We propose the introduction of a special kind of traits that implement methods implicitly invoked wh...
Construction and analysis of distributed systems is difficult. Multiparty session types (MPST) const...
Abstract. This paper introduces a programming framework based on the theory of session types for saf...
This is the companion artifact for the ESOP23 paper Safe Session-Based Concurrency with Shared Line...
Session types describe communication protocols, capturing both the type and the order of messages. R...
AbstractThere is an impedance mismatch between message-passing concurrency and virtual machines, suc...