learning-systems-programming-in-rust
『Go ならわかるシステムプログラミング』を Rust で書き直すプロジェクト、その名も「Rust ならわかるシステムプログラミング」。
これは何
- 『Go ならわかるシステムプログラミング』(渋川よしき著)内に書かれている Go コードを Rust で書き直しているプロジェクトです。
進捗状況
作者ががんばって Issue を切るなどの作業をしています…!
実行等について
各コードの実行方法
cargo workspace
等の機能を使用しているので、実行には cargo run
以外にさらにいくつかオプションをつける必要があります。たとえば chapter2
の 2_4_1/main.rs
を実行したい場合には、下記のように cargo
コマンドを打つと実行できます。
cargo run -p chapter2 --bin 2_4_1
Rust バージョン
- Rust ≥ 1.51.0
参加方法
簡単なコントリビューションガイド
- Issue に節単位のリプレース要件が書かれています。
- Issue に自身を自由にアサインして、Pull Request を送っていただければ大丈夫です。
- コメントで一言担当する旨を書いていただけると、他の方とバッティングせずに済むかもしれません。
- お気軽にどうぞ。
- 途中で作業が難しくなった場合は、遠慮なく難しくなった旨をお伝え下さい。
- 節の Go コードを Rust で書き直します。
- 書き直しができたタイミングで Pull Request を上げてください。
- レビュワーがレビューをし、Approve が出たタイミングでマージをします。
- レビューに関してはどなたでもコメントいただいて大丈夫です。
- 2〜3 日程度、「オープン期間」として Pull Request を開いておくことにしています。これは、他の参加者の方がレビューするチャンスを残したり、Pull Request を眺めるタイミングを作るためにそうしています。
- よしななタイミングで Approve して @yuk1ty がマージします。
- Approve が出たら Issue をクローズしていただけると助かります。
さらに詳しく具体的な実装に関する注意点等を記載しておりますので、こちらの Wiki もご覧ください。
本
- 私(@yuk1ty)が保持する『Go ならわかるシステムプログラミング』は第 1 版 1 刷(2017 年 10 月 23 日発行)のものです。したがって、最新の刷と比較すると若干章立てが違う可能性があります。大幅に違うようでしたら Issue にコメントいただけると助かります。
連絡など
- rust-jp の運営する Slack 上のチャンネル「
#learning-systems-programming-in-rust
」にてやりとりを行っています。- ぜひご参加ください。
- 進め方などの議論を行う予定です。
- 質問や相談など、もちろん Issue や Pull Request 内で行っていただいていいですが、専用の Slack チャンネルで行っていただくという手もあります。