%0 Conference Proceedings %T Safe Session-Based Asynchronous Coordination in Rust %+ Imperial College London %A Cutner, Zak %A Yoshida, Nobuko %Z Part 2: Communications: Types and Implemenations %< avec comité de lecture %( Lecture Notes in Computer Science %B 23th International Conference on Coordination Languages and Models (COORDINATION) %C Valletta, Malta %Y Ferruccio Damiani %Y Ornela Dardha %I Springer International Publishing %3 Coordination Models and Languages %V LNCS-12717 %P 80-89 %8 2021-06-14 %D 2021 %R 10.1007/978-3-030-78142-2_5 %K Rust %K Asynchronous communication %K Deadlock-freedom %K Session types %Z Computer Science [cs] %Z Computer Science [cs]/Networking and Internet Architecture [cs.NI]Conference papers %X Rust is a popular systems language focused on performance and reliability, with an emphasis on providing “fearless concurrency”. Message passing has become a widely-used pattern by Rust developers although the potential for communication errors leaves developing safe and concurrent applications an unsolved challenge. In this ongoing work, we use multiparty session types to provide safety guarantees such as deadlock-freedom by coordinating message-passing processes. In contrast to previous contributions [20–22], our implementation targets asynchronous applications using / code in Rust. Specifically, we incorporate asynchronous subtyping theory, which allows program optimisation through reordering input and output actions. We evaluate our ideas by developing several representative use cases from the literature and by taking microbenchmarks. We discuss our plans to support full API generation integrating asynchronous optimisations. %G English %Z TC 6 %Z WG 6.1 %2 https://inria.hal.science/hal-03387841/document %2 https://inria.hal.science/hal-03387841/file/509400_1_En_5_Chapter.pdf %L hal-03387841 %U https://inria.hal.science/hal-03387841 %~ IFIP-LNCS %~ IFIP %~ IFIP-TC %~ IFIP-WG %~ IFIP-TC6 %~ IFIP-WG6-1 %~ IFIP-COORDINATION %~ IFIP-LNCS-12717