7 个版本
0.3.0 | 2022年2月23日 |
---|---|
0.2.0 | 2021年6月23日 |
0.1.4 | 2021年6月12日 |
0.1.3 | 2021年5月14日 |
0.1.0 | 2020年11月15日 |
#978 in Rust 模式
每月下载量 31
115KB
5K SLoC
Ferrite - Rust 的会话类型 DSL
概述
Ferrite 是用于在 Rust 中编写会话类型程序的 DSL。这是 Soares Chen 和 Stephanie Balzer 进行的一项持续研究工作,旨在在 Rust 中实现会话类型。
文档
Ferrite 的文档正在作为一个 书籍 形式完善中。
Ferrite 的技术报告草案目前可在 Arxiv 上获取。
构建说明
cargo build
运行演示
在 src/bin
目录中有多个演示可执行文件。要运行特定的演示,请使用 cargo run
命令,并带有演示文件的名称。例如
RUST_LOG=info cargo run --bin hello
RUST_LOG=info cargo run --bin shared
代码组织
ferrite-session
base
- Ferrite 的核心结构functional
- 函数式编程结构,如类型应用和自然数。protocol
- 会话类型的类型定义session
- 项构造函数public.rs
- Ferrite 暴露的公共 API
演示
src/bin
- 演示可执行文件
致谢
本材料基于美国国家科学基金会资助的研究工作,资助编号为 CCF-1718267。本文中表达的意见、发现、结论或建议均为作者的观点,不一定反映美国国家科学基金会的观点。
依赖项
~7–18MB
~268K SLoC