< 返回版块

苦瓜小仔 发表于 2025-07-07 09:03

Tags:日报

半月刊:The Embedded Rustacean Issue #49

亮点:

  • 📢 乐鑫 DevCon 2025 演讲嘉宾征集
  • 🦺 CISA 和 NSA 参与内存安全对话
  • 🔐 微软宣布 RIFT (Rust 恶意软件分析工具)
  • 💰️ Nordic 收购 Memfault 和 Neuton
  • 📢 RustForge 和 Oxidize 会议日程公布
  • 📱 Meta 在移动端从 C 语言过渡到 Rust
  • ♾️ 全新 AI 驱动的 Arduino IDE

阅读:https://www.theembeddedrustacean.com/p/the-embedded-rustacean-issue-49

Python 语言峰会:Python 核心开发者对 Rust 的期望

作者:Python Software Foundation

2025 年 Python 语言峰会探讨了 Python 核心开发者对 Rust 的期望。

PyO3 维护者 David Hewitt 指出,Rust 在 PyPI 中的使用率逐渐增加,约 1/4 至 1/3 的新本地代码项目使用 Rust。

他展示了 PyO3 如何简化 Python 中的 Rust 使用,并讨论了 Rust 在支持 Python 自由线程方面的优势,以及在 GCC 后端和子解释器隔离方面的挑战。

他还提出了 Python 核心开发者是否应投资 Rust 的问题,认为 Rust 的采用可能增加开发者人才库,并建议开发更高层次的 Rust API 以替代 C API。

阅读:https://pyfound.blogspot.com/2025/06/python-language-summit-2025-what-do-core-developers-want-from-rust.html

Reddit:https://www.reddit.com/r/rust/comments/1lsl3lq/the_python_language_summit_2025_what_do_core/

文章《使用 GCC 构建 Rust》

作者:fractalfir

这篇文章讲述了使用 GCC 替代 LLVM 来构建 Rust 编译器的尝试。

作者通过“bootstrapping”过程,分三个阶段逐步构建 Rust 编译器。

过程中遇到了多个问题,包括 128 位整数处理、递归函数内联问题以及优化时的段错误等。

通过调试和修复这些问题,作者最终成功实现了阶段 2 的构建,并接近完成阶段 3 的目标。

尽管过程中面临内存消耗大和性能问题,但作者对未来的工作充满信心,并提到了后续可能的改进方向。

阅读:https://fractalfir.github.io/generated_html/cg_gcc_bootstrap.html

Reddit:https://www.reddit.com/r/rust/comments/1ltaxcp/bootstraping_the_rust_compiler/

文章《类型参数中的方法调用解析》

作者:conectado

Rust 的方法解析过程遵循一系列规则来确定调用哪个方法。

首先,从候选类型列表 [T] 开始,尝试对最后一个元素进行解引用(*),如果成功则将其加入列表并重复此过程。

接着尝试进行无大小强制转换(如 [T; N] 转换为 [T])。之后,为每个候选类型 t 添加 &t&mut t

最后,依次检查每个类型的固有方法、类型参数的约束特征方法,以及可见的特征实现方法。

如果在某一步找到唯一匹配的方法,则调用并结束;如果存在多个匹配,则报错。

此外,解析顺序会影响结果。例如,类型参数直接约束的特征方法(如 impl<T: Bar> 中的 Baz)会在通过特征实现的方法之前被检查,这可能导致意外的行为,如在多个特征提供相同方法时发生冲突。

阅读:https://gist.github.com/conectado/7b5ce76abb325de7a56a0c8a428bc125

Reddit:https://www.reddit.com/r/rust/comments/1lt7vgh/method_call_resolution_in_rust_for_type_parameters/

Flat_rbtree:基于索引的红黑树实现

flat_rbtree 是一个高性能、基于索引的红黑树实现,专为性能和内存布局敏感的系统设计。

它具有以下特点:

  • 节点存储在数组中,避免指针间接访问;
  • 不使用堆分配;
  • 支持无标准库的环境;
  • 使用 MaybeUninit 预分配内存,确保安全初始化;
  • 编译时固定容量,资源使用可预测;
  • 可选支持子树大小跟踪,实现 rankselectrange_count 查询。

基准测试:

仓库:https://github.com/matheus-git/flat_rbtree

Reddit:https://www.reddit.com/r/rust/comments/1lset7m/indexbased_redblack_tree_for_no_std/

Visual-cryptography:Rust 实现基本的视觉密码学算法库

该库提供多种方案和可配置块大小的视觉密码算法的 Rust 实现。

视觉密码学是一种对视觉信息(图像)进行加密的技术,使人类视觉系统无需任何复杂的加密计算即可进行解密。其基本原理是将秘密图像分割成多个部分,这些部分看起来像随机噪声,但叠加后会显示原始秘密。

仓库:https://github.com/wowinter13/visual-cryptography

Reddit:https://www.reddit.com/r/rust/comments/1lslpc0/visual_cryptography_in_rust/

R2048:TUI 版本的 2048 游戏

仓库:https://github.com/asaft29/r2048

讨论:Rust 在特定领域的成熟度

阅读:https://www.reddit.com/r/rust/comments/1lsrlsw/maturity_of_rust_in_specific_niches/

--

From 日报小组 苦瓜小仔

社区学习交流平台订阅:

评论区

写评论

还没有评论

1 共 0 条评论, 1 页