4 个版本
0.17.0-pre.6 | 2024 年 1 月 23 日 |
---|---|
0.17.0-pre.5 | 2024 年 1 月 10 日 |
0.17.0-pre.4 | 2023 年 12 月 7 日 |
0.17.0-pre.3 | 2023 年 11 月 25 日 |
#227 in 开发工具
4,025 每月下载量
在 6 个 Crates 中使用(通过 cargo-modules)
1.5MB
3K SLoC
salsa
按需增量计算的泛型框架。
必要警告
目前还处于非常初级的开发阶段。尽管可以用于实验,但请期待频繁的破坏性变更。
致谢
本系统深受 adapton、glimmer 以及 rustc 的查询系统的影响。因此,感谢 Eduard-Mihai Burtescu、Matthew Hammer、Yehuda Katz 和 Michael Woerister。
关键思想
salsa
的关键思想是您将程序定义为一组 查询。每个查询都像函数 K -> V
一样使用,它将类型为 K
的某些键映射到类型为 V
的值。查询有两种基本类型
- 输入:系统的基本输入。您可以根据需要更改这些输入。
- 函数:纯函数(无副作用)将输入转换成其他值。查询的结果被缓存以避免重复计算。当您更改输入时,我们会智能地确定何时可以重用这些缓存的值,何时需要重新计算。
想了解更多吗?
要了解更多关于 Salsa 的信息,请尝试以下方法
- 阅读具有大量注释的 hello_world 示例;
- 查看 Salsa 书籍;
- 观看我们的 视频。
联系方式
依赖项
约 2–8MB
约 56K SLoC