Ferrite is a DSL for writing session type programs in Rust. This is an ongoing research work by Soares Chen and Stephanie Balzer, and Bernardo Toninho to implement session types in Rust.
-
The paper Ferrite: A Judgmental Embedding of Session Types in Rust is published at ECOOP 2022.
-
A technical report for Ferrite is currently available at Arxiv.
-
A work-in-progress documentation for Ferrite is available as a book.
cargo build
A number of demo executables are available in the src/bin
directory.
To run a particular demo, use cargo run
with the name of the demo file.
For example:
RUST_LOG=info cargo run --bin hello
RUST_LOG=info cargo run --bin shared
This material is based upon work supported by the National Science Foundation under Grant No. CCF-1718267. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation.