「From Rust to beyond系列」 Rust与PHP交互
关键字: [php, FFI, beyond]
「项目」Pyro: 一个轻巧的ECS
关键字: [pyro, ecs, specs]
Pyro是一个快速的、小型的、带文档的ECS。
特点:
- 完全线性的迭代
- 组件中的组合始终存在于同一存储中
- 目前还仅支持单线程(作者说未来会加多线程支持)
- 不要用于生产环境,该库主要是用于教育的目的
「官方」来帮助测试Rust 2018
$ rustup install beta
「工具」aws_lambda_events 发布
关键字: [aws, lambda, events]
aws_lambda_events 提供了AWS Lambda事件类型,以便与AWS Lambda事件源一起使用。
「工具」acct:Unix中acct函数的Rust实现
关键字: [acct, unix]
「项目」rs_pbrt发布0.4版本
关键字: [pbrt, render, raytracing]
rs_pbrt是对《Physically Based Rendering,PBRT(光线跟踪:基于物理的渲染) 》这本书中代码的Rust实现。
「官方」嵌入式工作组报告 14
关键字: [ Embedded ]
简要:
一、 好消息:终于可以用Rust Stable开发嵌入式程序了。
因为#[panic_handler]
登录了Rust 1.30稳定版,这就意味着可以用Stable Rust写Cortex-M的裸机程序了。cortex-m, cortex-m-rt 和 embedded-hal这几个库都可以用于Stable了。
但要注意在Discovery 和 The Embedded Rust Book这两本书中的代码还必须在1.30 beta或1.31 beta或最新Nightly版本中使用,因为它们用了2018 Edition版本。
二、嵌入式工作组已经启动了一个Cortex-A团队,专注于为ARM-Cortex-A系列微处理器的裸机程序开发提供支持。
三、为了解决多个设备连接到同一个外设的问题,@Rahix开发了shared-bus
四、嵌入式社区有了蓬勃的发展。工作组也从最初的8个人,增加到了现在的27名开发人员(分散在11个团队中,每个团队都在嵌入式开发中有自己的擅长领域)
现在是开始用Rust进行嵌入式开发的最好时机。
「算法库」hashbrown:基于Google SwissTable哈希算法实现的Map
关键字: [hashbrown, swisstable, hashmap, hashset, map]
该库是parking_lot作者开发的新库, 基于SwissTable算法实现了HashMap和HashSet。
Rust标准库的HashMap和HashSet基于RobinHood散列,hashbrown基于SwissTable散列。
SwissTable整体性能要优于Robinhood,尤其是在搜索上面:
| name |stdhash ns/iter | hashbrown ns/iter|diff ns/iter| diff % |speedup
|find_existing | 23,831 | 2,935 | -20,896 |-87.68% | x 8.12
|find_nonexisting | 25,326 | 2,283 | -23,043 |-90.99% | x 11.09
|get_remove_insert| 124 | 25 | -99 |-79.84% | x 4.96
|grow_by_insertion| 197 | 177 | -20 |-10.15% | x 1.11
|hashmap_as_queue | 72 | 18 | -54 |-75.00% | x 4.00
|new_drop | 14 | 0 | -14 |-100.00%| x inf
|new_insert_drop | 78 | 55 | -23 |-29.49% | x 1.42
每日新闻订阅地址:
欢迎通过GitHub issues投稿。
评论区
写评论还没有评论