前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Rust日报】 2019-05-05:清华大学陈渝副教授:尝试将Rust/Risc-V等新技术用于系统类课程教学

【Rust日报】 2019-05-05:清华大学陈渝副教授:尝试将Rust/Risc-V等新技术用于系统类课程教学

作者头像
MikeLoveRust
发布2019-07-09 12:59:59
1.5K0
发布2019-07-09 12:59:59
举报


XV中如何使用panic

#error_handle #panic

XV是一个终端16进制查看器,作者之前是Java开发者,XV是他的第一个Rust项目。他在本文主要介绍了UX中使用panic的一些经验。

  • 作者认为Rust里的panic等价于Java里的异常,所以他在XV中大量使用Unwrap。(日报君友情提醒:这一条谨慎看待,不是指滥用)
  • 当然,作者也是针对具体的情况来使用unwrap,在预期操作总是会成功的情况下会unwrap。所以,如果程序运行崩溃了,说明代码里有问题。
  • 类型转换。在确定安全的情况下使用From,在不太安全的情况下使用TryFrom。
  • 在Release模式下开启默认检查算术溢出。Rust在Debug模式下如果算术计算溢出会报错,但是在Release模型下会静默生成错误的结果。需要在Cargo.toml中设置overflow-checks = true来开启溢出检查。
  • 自定义了一个panic处理程序,类似于HumanPanic库。它会捕获回溯信息,当崩溃后再次启动XV,它还会显示一条错误信息,提醒人们在GitHub上提交错误报告。
  • Read More
  • xv

使用Rust扩展Python

#python

Read More


「系列文章」Rust:如何使用私有Cargo依赖项构建Docker镜像

#docker

本文展示了如何在构建Docker镜像时获取私有Cargo依赖项并获取它们。

Read More


「手工」自制Ferris布偶

#ferris

喜欢Ferris的朋友可以按这个教材手工制作一个。

Read More


指南:Rust Web开发中的Futures

#futures

本文以HTTP请求为示例,比较系统地介绍了Futures。

Read More


Smithy 0.3 发布

#wasm

又一个 WebAssembly 开发框架,完全用 Rust 开发网站前端的框架。作者立的 flag 是简单,快速。 新版本中增加了自定义路由的功能。

Read More


gptman: 允许管理GUID分区表的库

#guid #cli

支持Linux平台,允许您将分区从一个磁盘复制到另一个磁盘等等。

gptman


「系列文章」使用wasmer和Rust构建插件系统 Part 4

#wasmer

Wasmer是一个可以嵌入到Rust应用中的wasm解释器。

Read More


Hawk:基于Rust和AWS Services的图像识别应用

#hawk #ImageRecognition

用于人脸识别门禁系统的一个原型项目。

架构设计图

  • Read More
  • hawk

前端开发人员的Rust:模块

#frontend

该文作者在用Rust重写ember-cli项目,这篇文章是他的Rust学习心得吧。

  • Read More
  • rember-cli

Rust图形库指南

#Graphics

该指南主要为那些想要使用Rust编写图形内容(视频游戏,动画,炫酷可视化等)并且不知道从哪里开始的人提供上下文。

Read More


crates.io的crate下载总数达到了10亿

Thruster Web框架0.7.4发布,引入了async/await支持

#async #web

基于futures 0.3, async和await!宏。应该是为1.0预热,准备迎接官方的异步稳定。

Read More


「嵌入式Rust」micromath 0.3发布

#embeded

micromath是一个嵌入式的Rust数学库,支持快速安全的浮点数近似计算、常用的算术运算、2D/3D向量类型、统计分析和四元数等。

micromath


「学术」Varisat 0.2.0发布

#CDCL #SAT

Varisat是一个CDCL SAT求解器的Rust实现。CDCL SAT求解器在形式验证等领域应用广泛。

  • Read More
  • varisat

pkg-version: 可在编译时获取Cargo包版本

#cargo

一般情况下可以通过CARGO_PKG_VERSION_MAJOR环境变量来获取包的版本号,但是这种方式总是会产生字符串,只能在运行时将其解析为数字。所以这个库提供了一个pkg_version_major!过程宏在编译期解决这个问题。

(看源码发现依赖dtolnay的proc-macro-hack,它是一个支持表达式位置过程宏的库)

  • pkg-version
  • proc-macro-hack

Plotka: 轻松可视化浏览器中的数据

#visualize #browser

Plotka可以从stdin获取数据,解析它(作为JSON或CSV)并通过websockets进行广播。 还可以托管静态文件,可以完全通过它在浏览器中绘制数据,它可以用作Matplotlib等的替代品。

plotka


rudolfs: 基于AWS S3的高性能缓存Git LFS服务器

#GitLFS

LFS,Large File Storage, 大文件存储

rudolfs


本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-05-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Rust语言学习交流 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • ----
  • XV中如何使用panic
  • 使用Rust扩展Python
  • 「系列文章」Rust:如何使用私有Cargo依赖项构建Docker镜像
  • 「手工」自制Ferris布偶
  • 指南:Rust Web开发中的Futures
  • Smithy 0.3 发布
  • gptman: 允许管理GUID分区表的库
  • 「系列文章」使用wasmer和Rust构建插件系统 Part 4
  • Hawk:基于Rust和AWS Services的图像识别应用
  • 前端开发人员的Rust:模块
  • Rust图形库指南
  • crates.io的crate下载总数达到了10亿
  • Thruster Web框架0.7.4发布,引入了async/await支持
  • 「嵌入式Rust」micromath 0.3发布
  • 「学术」Varisat 0.2.0发布
  • pkg-version: 可在编译时获取Cargo包版本
  • Plotka: 轻松可视化浏览器中的数据
  • rudolfs: 基于AWS S3的高性能缓存Git LFS服务器
相关产品与服务
人脸识别
腾讯云神图·人脸识别(Face Recognition)基于腾讯优图强大的面部分析技术,提供包括人脸检测与分析、比对、搜索、验证、五官定位、活体检测等多种功能,为开发者和企业提供高性能高可用的人脸识别服务。 可应用于在线娱乐、在线身份认证等多种应用场景,充分满足各行业客户的人脸属性识别及用户身份确认等需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档