< 返回版块

苦瓜小仔 发表于 2025-05-29 17:22

Tags:日报

公告《Redesigning the Initial Bootstrap Sequence》

作者:许杰友

这篇文章介绍了Rust构建系统中初始引导流程的重大变更。

目前,Rust标准库支持由前一版本和当前版本的编译器构建,但未来将只支持当前版本。

这一变更不会影响Rust分发给用户的制品,但会简化构建过程。

文章详细解释了引导的概念、术语以及当前和重新设计后的引导序列的工作方式。重新设计的引导序列有诸多好处,包括减少标准库中cfg(bootstrap)的使用、优化重新基底操作以及使标准库的修改更加高效。

此外,它还使Rust的构建方式更接近其他Rust程序。

阅读:https://www.reddit.com/r/rust/comments/1ky3t15/redesigning_the_initial_bootstrap_sequence_inside/

视频 - Measuring CO2 using I2C & embedded Rust - moxi Ep1

这是三期系列节目的第一期,我们尝试将 microbit 转变为一个空气质量监测器。

我们通过寻找合适的硬件,学习 I2C 协议,并研究如何用嵌入式 Rust 来构建它。

视频:https://www.youtube.com/watch?v=vT4-bvHCbE0

仓库:https://github.com/therustybits/moxi

强烈推荐该博主的另一个视频:

zero-to-async - 通过嵌入式环境下从零开始到 Rust 异步编程:https://www.youtube.com/watch?v=wni5h5vIPhU

文章《Invalid strings in valid JSON》

作者:Jonas Platte

文章讲述了作者在处理一个Webhook时遇到的问题,即使输入是有效的JSON,但在将一个通用的“JSON值”表示转换为另一个时失败了。

原因是输入中的字符串以一个高UTF-16代理(\uXXXX,其中XXXXD800DBFF之间)结尾,而高代理应始终跟随低代理以编码UTF-16中的Unicode字符。

作者通过更新代码解决了此问题,并成功重新发送了Webhook。

Reddit:https://www.reddit.com/r/rust/comments/1kxgmyb/invalid_strings_in_valid_json/

演讲 - Rust, Graphics, Games and GPUs

作者:Max Blank

视频:https://www.youtube.com/watch?v=vLp3Vo1NkJA

Astra - Lua 的 Web 服务器运行时

Astra 是一个用 Rust 编写的 Lua(5.1-5.4)、Luau 和 LuaJIT 的 Web 服务器运行时,旨在提供高性能,同时允许开发者用 Lua 编写 Web 服务器逻辑,便于快速迭代、容错和无需构建。

它在 ArkForge 内部使用。可通过 GitHub Releases 或 Cargo 安装。

项目示例展示了如何创建服务器、注册路由、配置端口、处理请求和响应、使用本地变量、执行异步任务等。

仓库:https://github.com/ArkForgeLabs/Astra

Reddit:https://www.reddit.com/r/rust/comments/1kxhmhr/astra_v020_released_a_lua_5154jitluau_runtime/

Rust16vm - 16 位的虚拟机

rust16vm是一个用 Rust 编写的 16 位虚拟机,拥有 8 个寄存器,支持多种指令,包括MOVADDSUBMULDIVSTRLDRJMP和比较操作等。

它采用16位宽的指令集,每条指令占用2字节内存,通过简单的取指令/解码/执行循环运行。

项目提供了宏rv16asm!用于将汇编代码转换为二进制指令,还附带了简单的循环示例和更复杂的例子,后者演示了如何使用当前指令集进行字符运算、堆栈操作和函数调用。

仓库:https://github.com/EclesioMeloJunior/rust16vm

Reddit:https://www.reddit.com/r/rust/comments/1kxizyu/rust16vm_a_simple_16bit_virtual_machine_written/

--

From 日报小组 苦瓜小仔

社区学习交流平台订阅:

评论区

写评论

还没有评论

1 共 0 条评论, 1 页