Google对25名Rust开源贡献者做出奖励
Rust 是系统级编程语言,重点关注内存安全。Google 在一些项目中使用了 Rust:包括 Android、Fuchsia 和 ICU4X;并一直参与在 Linux 内核中评估 Rust 的工作。Google 也是 Rust 基金会的创始成员。
部分列表(经允许)如下:
地址:https://opensource.googleblog.com/2022/03/Rewarding-Rust-contributors-with-Google-Open-Source-Peer-Bonuses.html
Rust移动开发与跨平台模式探究
社区张汉东老师关于 Rust 在移动开发和跨平台模式方面的探究,大纲如下:
Rust 语言 对 iOS 和 Android 平台支持状态
Rust 用于移动开发的几种方式
Android 官方支持 Rust 的方式
给 Apple 的一封公开信:请用 Rust 替换 Objective-C
地址:https://zhuanlan.zhihu.com/p/484269271
bombs:单生产者多消费者通信类型
其中 Fuse
是生产者,Bomb
是消费者。
使用指南:
// Create a new fuse and bomb pair.
let (fuse, bomb) = Bomb::new();
// Clone `bomb` into thread.
let bomb_clone = bomb.clone();
thread::spawn(move || {
loop {
// Do some stuff...
if let Some(_) = bomb_clone.exploded() {
// Received close signal, break.
// Clean up data values...
break;
}
}
});
// Create another thread.
// Move original `bomb` into thread.
thread::spawn(move || {
loop {
// Do some other stuff...
if let Some(_) = bomb.exploded() {
// Received close signal, break.
// Clean up data values...
break;
}
}
});
// Do some different stuff...
// Send close signal.
let fire = fuse.light(());
// Wait for all inner threads to close safely (checked by `Bomb` drop).
while !fire.extinguished() { }
// Now safely quit the program.
GitHub:https://gitlab.com/nebneb0703/bombs
用Rust写个语言
使用 Rust 和 LALRPOP 从头开始实现一个 C 风格架构的编程语言。
视频:https://www.youtube.com/watch?v=OynJIFEsf3o
GitHub:https://github.com/eZanmoto/norpl
使用 Rust 实现 Brainfuck 语言。
Brainfuck 的 Hello World 是这样的:
++++++++++[>+++++++>++++++++++>+++>+<<<<-]
>++.>+.+++++++..+++.>++.<<+++++++++++++++.
>.+++.------.--------.>+.>.
地址:https://rtoch.com/posts/brainfuck-interpreter-implementation-part-1/
GitHub:https://github.com/CrazyRoka/brainfuck-interpreter
num2words:数字转文本
一个阿拉伯数字转自然语言的小工具。使用方法:
use num2words::num2words;
assert_eq!(num2words!(42), Ok(String::from("forty-two")));
也可以在命令行使用:
$ num2words 42
forty-two
$ num2words 10 --to EUR
ten euros
GitHub:https://github.com/Ballasi/num2words/
rust_android_ios寻找维护者
项目通过使用共享库来防止代码重复,保持完全原生的 UI 体验和对平台最新 API 的简单访问。它也非常灵活,允许在不同平台之间轻松迁移,包括传统的跨平台框架,如 Flutter 或 React Native。例如,您可以使用 Rust+React Native 或 Rust+Flutter 开发您的 MVP,然后迁移到原生 iOS/Android,而无需重写所有内容。您甚至可以使用 WebAssembly 或桌面应用程序将您的核心重用于 Web 应用程序(同样,您可以使用本机或跨平台框架,如 Electron)。
如果你有意向,可以在项目上开个 Issue,或给作者发邮件:mailto:ivanhp978@gmail.com
GitHub:https://github.com/ivanschuetz/rust_android_ios
From 日报小组 长琴
社区学习交流平台订阅:
Rustcc 论坛:支持 rss
微信公众号:Rust 语言中文社区