提到组合器是懒惰的

作者: illicitonion创建于 2024年10月31日更新于 2026年6月9日

https://Rust-exercises.com/100-exercises/06_ticket_management/07_combinators 介绍了 `filter`, `map` 等函数。我认为值得明确提到这些是懒加载操作,以及这意味着什么。来自 JavaScript 这样的语言中没有类似的懒加载概念(例如, `Array.prototype.filter` 会立即返回一个新的 `Array`)。强调 `map` 不会立即运行(并且不应当依赖于副作用!), 以及迭代器可以被收集到不同的集合(也许可以展示一个收集到 `BTreeSet` 或类似结构的示例 - 目前, `collect` 部分暗示了这一点,但我怀疑并没有像可以做到的那样明确)。这将有助于澄清这一点,并更清楚地展示这些组合器的强大功能。

内容来源: mainmatter/100-exercises-to-learn-rust