< 返回版块

ChaosBot 发表于 2018-08-04 12:51

Tags:rustnews

无GAT解决流迭代器问题的三种办法

TLDR:

GAT是指Generic Associated Types ,是Rust将来的类型系统扩展,但是还未实现,它提供了一种可以使用高阶类型的方法。

一个比较场景的例子是流式迭代器。

Rust标准库中的迭代器API不允许生成从迭代器本身借用的元素。比如std::io::Lines,其实现迭代器只能读一行数据分配一个新的String,而不能重用内部缓存区。而流式迭代器可以允许通过引用迭代,而不是值,这样就可以实现重用。想要支持这种StreamingIterator,就必须实现一种更高级别的类型多态性,所以GAT 将会把Rust类型系统扩展到支持特点形式的高级多态性,称为关联类型构造函数。 相关RFC 1598

这篇文章提出了三种无GAT下实现StreamingIterator的办法。

原文


参与改善Rust的心得

该文作者针对其提交的Rust PR#52942和#52997分享了改善Rust的一些心得体会

原文


Rust 2018 Edition 周末报告 第四期

看上去嵌入式工作组和CLI工作组进展比较丰富

原文


Rustc现在已经支持RISC-V

  • LLVM后端
  • 实现了call abi
  • 内建 riscv32imac-unknown-none target

PR


基于Rust全局分配器的中间件stats_alloc

可用于测试验证有关分配模式的假设,并可能用于生产负载以监控内存泄漏。

stats_alloc


妹纸邀请你来做贡献

该项目作者是Asquera的员工,Asquera是德国一家技术公司,该公司招Rust工程师呢,可Remote

所以如果有兴趣有意愿做remote的童鞋,可以参与一下贡献

issues


评论区

写评论

还没有评论

1 共 0 条评论, 1 页