41 个版本
0.17.0-pre.2 | 2021 年 10 月 6 日 |
---|---|
0.17.0-pre.1 | 2021 年 5 月 29 日 |
0.16.1 | 2021 年 5 月 5 日 |
0.16.0 | 2020 年 10 月 14 日 |
0.8.0 | 2018 年 11 月 1 日 |
在 算法 中排名第 218
每月下载量 46,173
用于 105 个crate(34 个直接使用)
1.5MB
3K SLoC
salsa
一个用于按需、增量计算的通用框架。
强制警告
目前非常处于开发中。适合实验性使用,但预期会有频繁的破坏性更改。
致谢
本系统深受 adapton,glimmer 和 rustc 的查询系统的影响。因此,感谢 Eduard-Mihai Burtescu、Matthew Hammer、Yehuda Katz 和 Michael Woerister。
关键思想
salsa
的关键思想是您将程序定义为一组 查询。每个查询都像函数 K -> V
一样使用,它将类型为 K
的某些键映射到类型为 V
的值。查询有两种基本类型
- 输入:您系统的基本输入。您可以随时更改这些。
- 函数:纯函数(无副作用),将输入转换成其他值。查询的结果被缓存以避免频繁重新计算。当您更改输入时,我们会(相当智能地)确定何时可以重用这些缓存的值,何时需要重新计算它们。
想了解更多信息?
要了解更多关于莎莎的信息,请尝试以下方法
- 阅读 详细注释的
hello_world
示例; - 查看 莎莎书籍;
- 观看我们的 视频 之一。
联系方式
依赖关系
~4MB
~75K SLoC