#Rust
从2015年5月15日Rust 1.0版发布至今,取得了如下成绩:
连续四年StackOverflow的“最受喜爱的编程语言” (日报君感慨:近一年半看了很多社区内的各种动态,大家形容Rust用的最多的一个词是:Amazing,如果非要翻译成中文,我觉得「赞叹」比较好。)
稳定了嵌入式Rust
rustc成为第一个专注于支持WASM的编译器
Rust 2018 edition发布
Crates.io通过了10亿次下载,拥有超过25,000个crate
现在全世界有超过100个聚会,分布在42个国家
6场新的大会在世界各地涌现(RustRush,RustCon Asia,Oxidize,Rust LATAM,Colorado Gold Rust,RustLab Italy)
这个清单如果继续写下去会很长,Rust已经在众多领域陆续开花了。Rust社区感谢有你!
Read More
#Rust
社区@Mike写的一篇文章,侧重分享了为什么Rust适合区块链开发。
#async
Read More
#learning
这位博主打算写一系列主题是Rust for OOP的文章,主要是针对有一定OOP语言开发经验的人来学习。可以先关注下。
Read More
#CPP
这篇文章介绍了一些可以帮助自动生成C/C++ API的优秀工具。比如:
bindgen, 可以根据给定的头文件自动创建Rust绑定代码。对C语言比较友好,但是对C++来说,用途有限。因为C++的继承处理比较麻烦。
cbindgen,可以方便地为Rust项目生成C API。它还支持以C++风格输出数据类型和模板等。
cpp,这是一个Rust crate,可以帮忙编写C++ API。它提供了一个cpp!宏,可以在其中嵌入c++代码。它可以方便和cbindgen搭配使用。
作者还总结了一些在Rust中创建C/C++API的准则:核心逻辑和FFI层之间应该明确分离,最好把FFI代码置于一个单独的crate中,这样做的好处是设计Rust API不会受到FFI的太多影响。
Read More
#dsl #parsing
可用于语言设计,自定义格式和数据驱动开发。该库提供了一种叫做「meta语言」的规则,用来告诉程序如何阅读要解析的文档。这些文档都是人类可读格式的。
最小化示例:
use piston_meta::*;
fn main() {
let text = r#"hi James!"#;
let rules = r#"
1 say_hi = ["hi" .w? {"James":"james" "Peter":"peter"} "!"]
2 document = say_hi
"#;
// Parse rules with meta language and convert to rules for parsing text.
let rules = syntax_errstr(rules).unwrap();
let mut data = vec![];
parse_errstr(&rules, text, &mut data);
json::print(&data);
}
输出:"james":true
meta
#rOS
Rust比较适合机器人领域
rplidar.rs
#staticFile
see
From 日报小组 @Chaos
原文作者:Rust语言中文社区;如有侵权,请联系管理员删除。