ChaosBot avatar

【Rust日报】 2019-01-04

blackanger

Published: 04 Jan 2019 › Updated: 04 Jan 2019

【Rust日报】 2019-01-04

pyoxidizer: Rust编写的Python应用分发工具

#python

pyoxidizer


「博文」对Rust中错误传播的思考

#errorhandle

Read More


「博文」2019期望:使用Rust制作和使用C兼容的库

#2019 #ffi

目前构建和安装共享库比较困难,尤其是在多个平台上。Cargo的能力目前还待扩展,Rust的ABI也未稳定,所以需要使用兼容C-ABI来和其他语言沟通。但是现在如果你的库想提供一个C绑定接口,目前还没有一个完美的解决方案。作者罗列了现存的问题,并且他计划在2019年尝试提供一些解决方案。

Read More


Ropey发布1.0版

#rope #text

Ropey是一个文本rope数据结构的实现,旨在成为文本编辑器等应用程序的后备文本缓冲区。

Rope一个二叉查找树。优势:

  • Rope不需要连续的内存空间,不像数组
  • Rope在字符串中进行插入和删除更快O(logn)。而在字符串数组中需要O(n)。
  • 在进行数据copy时。Rope不需要额外的O(n)内存空间。

缺点

  • 需要更多的内存空间,需要维护父节点。
  • 增加代码的复杂度。

ropey


Mozilla招人了

#job

很多岗位,包括Rust实习生。在美国的朋友有福了。

Read More


regex-automata: 使用DFA的正则表达式库

#no_std

支持no_std环境。与regex库的区别是:

  • regex是通用的正则表达式引擎,对编译时间、搜索和内存使用有一个均匀的平衡,还提供了方便的API。
  • regex-automata,则提供了更加底层的接口,可能对于用户来说不太方便,但它提供对内存使用和搜索时间更明确的控制。

regex-automata


Smithay发布0.2

Smithay旨在提供构建模块,以在Rust中创建Wayland合成器。基于wayland-rs实现。wayland-rs采用纯Rust实现,是Wayland协议的Rust实现,弃用了之前的C绑定。Wayland是一个协议定义了如何与内核通讯、如何与Client通讯等,Linux桌面X Client/X server的替代者。

Read More


Victorem: 一个基于UDP的简单游戏框架

#game

提供Server和Client,方便用户创建简单的2D和3D游戏原型。项目刚发布,完成率还有点低,可以关注下。

Victorem


「学术论文」利用Rust类型进行模块化规范和验证

#paper #verification

论文的四个作者均来自于瑞士苏黎世联邦理工学院计算机科学系。文中声称利用了一种新的验证技术,利用Rust类型系统来简化Rust程序的规范和验证。

Read More


bytelines: 可以高效按字节切片读取输入行

#text

声称,在不特别关心unicode的情况下,比lines()的执行速度要快得多。

bytelines


「流媒体技术」构建MPD索引

#mpd #vedio

MPD(Media Present Description)可以非常简洁——只需要短短的几行表述就可以构建一个很大的媒体列表。

作者一般从SoundCloud下载音乐进行播放,但是过程很麻烦:必须浏览SoundCloud,下载一个看起来很有趣的曲目,将其上传到音乐服务器,让MPD将其编入索引,然后播放。所以作者用Rust制作了SoundClound音乐索引,文章记录了他的做法。


strength_reduce: 快速整数除法和模数运算

#no_std

支持no_std环境。

strength_reduce


日报订阅地址:

欢迎通过GitHub issues投稿。

Leave 【Rust日报】 2019-01-04 to:

Written by

Read more #rust posts


Best Posts From ChaosBot

We have not curated any of blackanger's posts yet. But you can encourage our curation team to review posts by visiting them regularly and by referring other readers. Because we give priority to frequently read content.

More Posts From ChaosBot