【Rust 日报】2022-03-27 Google对25名Rust开源贡献者做出奖励

Google对25名Rust开源贡献者做出奖励

Rust 是系统级编程语言,重点关注内存安全。Google 在一些项目中使用了 Rust:包括 Android、Fuchsia 和 ICU4X;并一直参与在 Linux 内核中评估 Rust 的工作。Google 也是 Rust 基金会的创始成员。

部分列表(经允许)如下:

WinnerProject
antoyoFor work on rustc_codegen_gcc
Asherah ConnorFor maintaining comrak
David HewittFor maintaining PyO3
Dirkjan OchtmanFor maintaining rustls and quinn
Frank DenisFor maintaining rust-ed25519-compact
Gary GuoFor maintaining Rust for Linux
Jack GriggFor integrating RustCrypto into Fuchsia
Jack HueyFor highly involved rust compiler work fixing a large number of crashes around higher-kinded types.
Joe Birr-PixtonFor building rustls
Joshua NelsonFor improving the developer workflow for contributing to Rust itself
LokathorFor creating tinyvec and bytemuck
Mara BosFor work on the Rust Libraries Team and the 2021 Rust Edition
Nikita PopovFor maintaining the Rust compiler’s LLVM backend
Pietro AlbiniFor maintaining crucial Rust infrastructure and working on the Rust core team
Ricky HosfeltFor maintaining cargo-outdated
Sébastien CrozetFor creating dimforge
Simonas KazlauskasFor maintaining the Rust compiler’s LLVM backend

找了几次,没在原文中找到到底奖了啥;)不过,Google Open Source Peer Bonus 主页有:一张预付借记卡和一封奖励信 :D

另外,社区成员说 Gary Guo 大佬是中国人~

地址: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

2d004ed1e1d097558fcd8b803a27d18f.png

地址: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 是 Urban Müller 于 1993 年创建的一种极简、深奥的编程语言。该语言以其极简主义著称,仅包含八个简单的命令、一个数据指针和一个指令指针。虽然它是完全图灵完备的,但它并不是为了实际使用,而是为了挑战和娱乐程序员。——来自维基百科

Brainfuck 的 Hello World 是这样的:

++++++++++[>+++++++>++++++++++>+++>+<<<<-]
>++.>+.+++++++..+++.>++.<<+++++++++++++++.
>.+++.------.--------.>+.>.

小编内心 OS:谁吃饱了撑的没事干搞这个^_^

地址: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 语言中文社区

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值