Imperial College London

ProfessorNobukoYoshida

Faculty of EngineeringDepartment of Computing

Academic Visitor
 
 
 
//

Contact

 

+44 (0)20 7594 8240n.yoshida Website

 
 
//

Location

 

556Huxley BuildingSouth Kensington Campus

//

Summary

 

Publications

Citation

BibTex format

@inproceedings{Miu:2021:10.1145/3446804.3446854,
author = {Miu, A and Ferreira, Ruiz F and Yoshida, N and Zhou, F},
doi = {10.1145/3446804.3446854},
pages = {94--106},
publisher = {ACM},
title = {Communication-safe web programming in TypeScript with routed multiparty session types},
url = {http://dx.doi.org/10.1145/3446804.3446854},
year = {2021}
}

RIS format (EndNote, RefMan)

TY  - CPAPER
AB - Modern web programming involves coordinating interactions between browser clients and a server. Typically, the interactions in web-based distributed systems are informally described, making it hard to ensure correctness, especially communication safety, i.e. all endpoints progress without type errors or deadlocks, conforming to a specified protocol.We present STScript, a toolchain that generates TypeScript APIs for communication-safe web development over WebSockets, and RouST, a new session type theory that supports multiparty communications with routing mechanisms. STScript provides developers with TypeScript APIs generated from a communication protocol specification based on RouST. The generated APIs build upon TypeScript concurrency practices, complement the event-driven style of programming in full-stack web development, and are compatible with the Node.js runtime for server-side endpoints and the React.js framework for browser-side endpoints.RouST can express multiparty interactions routed via an intermediate participant. It supports peer-to-peer communication between browser-side endpoints by routing communication via the server in a way that avoids excessive serialisation. RouST guarantees communication safety for endpoint web applications written using STScript APIs.We evaluate the expressiveness of STScript for modern web programming using several production-ready case studies deployed as web applications.
AU - Miu,A
AU - Ferreira,Ruiz F
AU - Yoshida,N
AU - Zhou,F
DO - 10.1145/3446804.3446854
EP - 106
PB - ACM
PY - 2021///
SP - 94
TI - Communication-safe web programming in TypeScript with routed multiparty session types
UR - http://dx.doi.org/10.1145/3446804.3446854
UR - http://hdl.handle.net/10044/1/86358
ER -