#C #FFi
兩篇文章介紹了如何綁定C庫,並且將其抽象為安全的方法調用。
Part I: https://medium.com/dwelo-r-d/using-c-libraries-in-rust-13961948c72a Part II:https://medium.com/dwelo-r-d/wrapping-unsafe-c-libraries-in-rust-d75aeb283c65
使用async/await構建高性能TCP客戶端#async #await #tcp
作者通過創建了一個TCP客戶端的項目Clobber來體驗將在1.39中穩定的Async/Await的功能,結論:體驗非常好,非常期待Rust異步穩定之後,社區將會帶來什麼變化。
通過AVL樹來理解Rust的所有權#Elixir #AVL
一個Elixir程式設計師開始學習Rust,在看完Too Many LinkedList之後,進一步實現更複雜的數據結構:AVL樹(自平衡二叉查找樹),以此來學習Rust的所有權機制。
在Rust中使用Tree-sitter解析器生成器#TreeSitter
TreeSitter是 GitHub 團隊的解析器項目, 目的在於給 GitHub 及 Atom 編輯器提供高效以及跨語言的語法解析支持, 採用 GLR 算法, 支持消歧, 從錯誤中恢復, 增量解析等功能。TreeSitter支持多種語言,且支持增量解析,它的出現降低了自己實現語言的門檻。
該文章簡單介紹了Rust中使用TreeSitter的方法。
Crev的使用教程#Crev
cargo-crev是一個代碼審查工具,旨在構建信任的生態網絡。但它並不局限於Rust社區,C/Cpp也可以使用。
該工具可以判斷你項目中依賴crate的安全性、質量和發現的問題。可以在公共的git倉庫裡發布可驗證的review信息。通過這種方式期望在Rust生態系統中構建可信任的網絡。將不會有人再受到未經審查和不受信任代碼的困擾。
想想npm因為依賴包出了多少次安全事故。這個工具ms不錯,但是否真的可以解決問題?
Read More: https://wiki.alopex.li/ActuallyUsingCrev
使用Rust進行遊戲開發6個月之後收穫到了什麼?#game
一位使用Rust開發遊戲的妹紙,最近6個月內使用ggez框架開發自己的個人遊戲項目,這篇文章簡單介紹了她的一些感想,比如如何堅持做自己的項目、ECS很棒之類的。
重點是她之前寫的另一篇文章:24小時遊戲開發,介紹了如何使用ggez框架在24小時內開發一款小遊戲。感興趣的看看吧。
Read More: https://iolivia.me/posts/6-months-of-rust-game-dev/
artichoke: Rust實現的Ruby#Ruby
兼容MRI。Artichoke core提供了一個與實現無關的Ruby運行時,任何實現都可以加載它。Artichoke core中的運行時將100%通過core和標準庫Ruby規範。運行時將以Rust和Ruby的混合方式實現。Artichoke中的Regexp實現就是這種方法的一個典型例子。
rx:一個Rust實現的可擴展的現代像素編輯器#PixelEditor
像素編輯器一般用於對小圖片進行編輯製作的工具。
「系列」Rust for OOP系列:閉包#learning #oop
這位博主打算寫一系列主題是Rust for OOP的文章,主要是針對有一定OOP語言開發經驗的人來學習。已經寫了多篇,本文是關於閉包。
Read More:https://oribenshir.github.io/afternoon_rusting/blog/closures
actix-raft: 基於actix框架實現的raft庫#raft
Raft是一種分布式共識協議。該作者的目標也是想做分布式資料庫。
Repo: https://github.com/railgun-rs/actix-raft
Rust異步代碼的優勢:相比於其他語言更加容易調試#async
該文作者通過研究棧回溯信息發現,Rust的異步代碼基於輪詢(Poll)模型,意味著我們總是有「異步調用者」在輪詢期間,等待「異步被調用函數」在棧上完成。這個屬性使得調試異步代碼在Rust中相比於其他語言更加容易。(該文比較了JavaScript中的異步棧回溯信息
Read More: http://fitzgeraldnick.com/2019/08/27/async-stacks-in-rust.html
「視頻」使用Rust擴展Python#python
演講的重點是:pyo3 和 milksnake
Videos: https://www.youtube.com/watch?v=4h8Ll9_-SZY
PyO3 : https://github.com/PyO3
milksnake: https://github.com/getsentry/milksnake
「思考」對於小的結構體,傳值(By-Copy)還是傳引用(By-Borrow)?#Struct
這個小小的問題,涉及日常編寫代碼需要考慮的兩個問題:性能 vs 人體工程學
我們是追求性能呢,還是追求代碼的可讀性和維護性等?
該文作者通過大篇幅的討論,甚至深入到C++中探討,得出結論:還是By-Copy吧。至於原因,還需要仔細閱讀他的文章。
Read More: https://www.forrestthewoods.com/blog/should-small-rust-structs-be-passed-by-copy-or-by-borrow/
RACC: Berkeley YACC解析器生成器移植到Rust#BerkeleyYACC
作者的練手項目
Repo: https://github.com/sivadeilra/racc/
From 日報小組 Chaos
日報訂閱地址:
獨立日報訂閱地址:
Telgram Channel
阿里雲語雀訂閱
Steemit
GitHub
社區學習交流平臺訂閱:
Rust.cc論壇: 支持rss
Rust Force: 支持rss
微信公眾號:Rust語言學習交流