C++和Rust_「Rust日报」2019每周精选 ? 第八期

1bdda2eedd46eedc6c04dd3bd1c82f42.png 1eec2065be774a4148dbe86193eae32e.png

「Mozilla」用Rust重写浏览器组件的意义

该文以Quantum CSS为案例,探讨「用Rust重写」对真实世界的影响。

概要: Rust虽然无法捕捉全部的安全漏洞,但是可以消除重大的安全漏洞,并且可以让开发人员专注于程序逻辑的正确性和健壮性。

Read More

wasmer : 性能提升100倍

wasmer是一个服务端wasm解释器。最近发布了0.2.0版本,号称性能提升了100倍。

Read More

「视频」是时候用Rust重写操作系统了吗/h2>

来自去年QCon San Francisco 2018的视频。作者非常看好Rust。

  • Read More
  • 文本

编写桌面版和Web版Roguelike游戏

该作者准备参加Roguelike游戏挑战赛,用Rust实现了一个可跨平台运行的游戏demo。本文是该demo的一个教程。

  • Read More
  • 代码

Pop周报

System76公司(Redox背后的公司)的PopOS周报。这篇报告里说,System76公司的桌面项目都是用Rust实现的。那是不是意味着他们的PopOS中的桌面项目都是Rust实现的呢opOS看上去还不错。

  • popOS
  • Read More

「视频」Rust Auckland 2019-02-25:Amethyst游戏引擎介绍

  • Read More
  • slides

skribo:底层文本布局库启动

Xi Editor的作者raphlinus之前写的博文说,文本布局是Rust GUI生态缺失的部分。skribo就是他为了弥补这个缺失的生态而开的新坑,用于全面改进文本处理。

  • Read More
  • skribo

学习资源

来自Rust读者群的分享:Rust生命周期

作者:月泉

针对Rust的生命周期及所有权机制的一些知识写了一篇文章,希望能够帮助群里的各位书友理解这些知识。

期待更多的学习分享。

Read More

「嵌入式Rust」Cortex-M3 入门指南(三):时钟总线与复位时钟控制器

Read More

Rust优化小技巧

Read More

「嵌入式Rust讨论」用什么硬件可以更容易地开始用Rust进行嵌入式开发

有人在Reddit发帖询问此问题,他用的是Arduino,但是使用Cpp和Rust都非常痛苦。即便使用针对Arduino的Rust版本avr也不太稳定,所以他想问问什么硬件更适合入门者/p>

回复中有人提到,使用基于ARM Cortex-M的硬件,比如STM-32 uC更好,Rust对该硬件体系支持的更好。可以配合discovery book一书学习。 评论中也有其他建议可以看看。

  • Reddit 讨论
  • discovery book

「视频」从零开始使用Rust构建嵌入式传感器节点平台

  • Read More
  • internet-of-streams

Rust 胖指针探秘

Read More

如何使用命令行参数

这篇文章帮你揭开Rust命令行参数的神秘面纱。

Read More

用Rust实现一个mod播放器 Part 1

mod是一种音乐格式。

  • Read More
  • 代码

Clojure,Rust,Pony,Erlang和Dart分别如何实现无畏并发

该文分别展示了五种语言的安全并发模型:

  • Clojure: Alternative 并发模型
  • Rust: 所有权机制(ownership)
  • Pony:引用能力(Reference Capabilities),Pony 语言中每种变量的类型都包含了有关如何在 actor 之间分享数据的信息。有点像Rust的借用检查器。
  • Erlang:Actor模型
  • Dart:Actor模型,在Dart里叫Isolates(逻辑上隔离内存)。

Read More

「系列文章」从零开始构建数据库

这系列文章不错,教你用C从头开始构建一个sqlite数据库,感兴趣的可以换成Rust来实现。当然,去年也有人写Rust实现关系数据库的文章,可惜烂尾了。

Read More

Rust build脚本与Meson

该文作者在尝试将Rust和Meson集成。这篇文章记录了他在此过程中使用build.rs的一些经验。

  • Read More
  • meson

「系列视频」如何用Rust构建属于自己的加密货币 Part 1

  • Read More
  • 代码

「教程」min-sized-rust: 该库演示了如何最小化Rust二进制大小

min-sized-rust

「系列文章」WebAssembly的麻烦 Part 4 : Microwasm

该系列文章主要探讨WebAssembly中的缺陷。

Microwasm是与Wasm兼容的格式,可以被运行时有效地使用,并由LLVM等编译器生成。它目前在Lightbeam(将wasm生成机器码的实验工具)的Microwasm分支中实现。由以下三步生成:

  • Compiler IR->Microwasm;
  • Wasm->Microwasm;
  • Microwasm->Native.

该作者团队还在维护一个wasmtime库,它们引入了Microwasm是为了进一步提升性能,并且为Microwasm编写后端比wasm更加容易。因为Microwasm生成的汇编代码比Wasm直接生成的汇编代码更加简单。

  • Read More
  • lightbeam
  • wasmtime

为Rust库公开FFI接口

该文作者之前实现了battery库,该库用到了battery-ffi库,专门封装了一些FFI接口,给主库使用。他在这篇文章中写下了编写FFI的一些注意事项。可以看作是一个FFI最佳实践来学习。

Read More

「教程」min-sized-rust: 该库演示了如何最小化Rust二进制大小

min-sized-rust


项目、工具与库

tweek-rust: Rust实现的Tween动画工具包

Tween动画可以对对象进行缩小,放大,旋转,渐变,位移等操作,用于在游戏或应用中实现一些渐变类动画动作。最早是伴随Flash技术出现的。现在该技术已经用在了web前端和手机App中。

该库中包含了两个示例,可以看看。

  • tweek-rust
  • 点此查看视频

McEx: Rust和Elixir共同实现的MineCraft服务器

McEx

WAS: 用于捕获wasm编译器和应用程序内存问题的内存分配器

WAS(不是WASM)是一个简单的WASM内存分配器,旨在捕获WebAssembly编译器和应用程序中的内存问题。

was-not-wasm

使用graphviz可视化Rust代码流程图

Rust编译器可以生成flowgraph IR,然后通过graphviz这个软件就可以生成流程(FlowGraph)图。cargo inspect这个工具把graphviz调用命令集成进去了,新版本可以方便地生成流程图了。

a0d9ad8cf55ac2c6c1fffa0406d335d4.png

Read More

git-req: 轻松查看GitLab和GitHub中的合并请求

Rust实现的命令工具,只需要把git-req设置好环境变量,即可成为git的子命令。

  • git-req
  • Read More

「嵌入式Rust」开发环境指引

Read More

psd: PSD文件解析器

Rust实现的PSD文件解析工具,还有个在线使用wasm的demo。

  • psd
  • live demo

imagene: 通用图像处理工具

基于image库实现

imagene

battery: 用于收集笔记本电脑电池信息的库

支持Linux、Mac、Windows。通过该库提供的命令,可以在终端查看电池相关的信息。

Read More

swym: 实验性软件事务内存库

可用于实现并发数据结构,其性能和无锁数据结构相差无几。

Read More

cargo-deps: 可视化项目中的依赖库

它是对cargo-graph库的分支,同样是基于graphviz库,可以可视化依赖项的关联。作者号称该库是对cargo-graph的改进。

  • cargo-deps
  • cargo-graph

Forge: Rust实现的一种轻量级的动态语言

支持Rust FFI

  • forge
  • playground

higher: Rust实现的类Haskell高阶类型

包括applicative、functor、monad以及type class等。

higher

Atto: Rust实现的一个简单的函数式语言

atto

laminar: 用于多人游戏的半可靠UDP协议实现

该库在UDP的基础上实现了TCP的一些功能。它被用于Amethyst游戏引擎中。

laminar

MIRAI: 来自Facebook实验室的Rust MIR抽象解释器

MIRAI的目标是成为Rust的静态分析工具。

MIRAI

rendy-pbr: 玩具版实时物理渲染器

基于rendy和gfx-hal实现

  • rendy
  • rendy-pbr

相关资源:倍速软件,可以加速观看过程_倍速播放学习-图像处理工具类资源…

来源:weixin_39922769

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年10月18日
下一篇 2020年10月18日

相关推荐