Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
roadmap to rust 2024
Search
Kentaro Matsumoto
May 14, 2022
Programming
0
2k
roadmap to rust 2024
Kentaro Matsumoto
May 14, 2022
Tweet
Share
More Decks by Kentaro Matsumoto
See All by Kentaro Matsumoto
Marpを使って登壇資料を作る
matsu7874
0
470
Generate a rust client code by OpenAPI Generator
matsu7874
0
320
ざっと理解するRust 2024 Edition
matsu7874
0
720
プリントデバッグを失敗させないテクニック
matsu7874
1
310
社外を巻き込んだ勉強会を定期開催するコツ
matsu7874
0
160
actix-webを使った開発のハマリポイントを避けたい
matsu7874
0
1k
our test strategy on actix-web app
matsu7874
0
1.4k
Rust tutorial for Pythonista
matsu7874
2
1.2k
Mock testing with mockall
matsu7874
0
340
Other Decks in Programming
See All in Programming
Androidアプリの One Experience リリース
nein37
0
1.2k
Внедряем бюджетирование, или Как сделать хорошо?
lamodatech
0
940
ATDDで素早く安定した デリバリを実現しよう!
tonnsama
1
1.9k
テストコードのガイドライン 〜作成から運用まで〜
riku929hr
7
1.4k
最近のVS Codeで気になるニュース 2025/01
74th
1
100
Итераторы в Go 1.23: зачем они нужны, как использовать, и насколько они быстрые?
lamodatech
0
1.4k
PHPカンファレンス 2024|共創を加速するための若手の技術挑戦
weddingpark
0
140
生成AIでGitHubソースコード取得して仕様書を作成
shukob
0
630
ISUCON14感想戦で85万点まで頑張ってみた
ponyo877
1
590
asdf-ecspresso作って 友達が増えた話 / Fujiwara Tech Conference 2025
koluku
0
1.4k
PHPとAPI Platformで作る本格的なWeb APIアプリケーション(入門編) / phpcon 2024 Intro to API Platform
ttskch
0
390
watsonx.ai Dojo #6 継続的なAIアプリ開発と展開
oniak3ibm
PRO
0
170
Featured
See All Featured
Building Adaptive Systems
keathley
38
2.4k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
132
33k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
28
2.2k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
28
4.5k
Optimising Largest Contentful Paint
csswizardry
33
3k
Become a Pro
speakerdeck
PRO
26
5.1k
Making the Leap to Tech Lead
cromwellryan
133
9k
The Invisible Side of Design
smashingmag
299
50k
BBQ
matthewcrist
85
9.4k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
960
How to Think Like a Performance Engineer
csswizardry
22
1.3k
Transcript
Rust 2024 に向けて Rust 2021 を理解しよう @matsu7874 1
2 • @matsu7874 • SWE@estie • オフィス不動産領域のSaaS • 新しいプロダクトをRustで開発しています •
『実践Rustプログラミング入門』共著 • TechFeed Official Expert(Rust) 自己紹介: @matsu7874
3 edition: 後方互換性を保ちつつ破壊的な変更を入れる仕組み rustc 1.60.0 (7737e0b5c 2022-04-04) Edition 2021 クレートMain
Edition 2015 クレートA Edition 2018 クレートB Edition 2021 クレートC どのeditionで書かれた クレートも参照可能 どのeditionで書かれたクレートも最新のコンパイラでコンパイル可能
4 • Rust 2015: 安定性 • 最初の安定版リリース • Rust 2018:
生産性 • dyn Trait構文の導入 • extern crateの削除 • Rust 2021: 一貫性 • TryInto, TryFrom, FromIteratorトレイトのPreludeへの追加 • 今はこれが最新 • Rust 2024: エンパワーメントの拡大(scaling empowerment) edition: テーマがある
5 1. 学習しやすくする: Flatten the (learning) curve 2. ライブラリ作成者を支援する: Help
users help each other 3. Rustに貢献しやすくする: Help the Rust project scale Rust2024の注力ポイント: エンパワーメントの拡大(scaling empowerment)とは?
6 1. より正確な分析を行い、ボイラーテンプレートを減らす 2. いくつかの糖衣構文を追加する 3. 非同期(async)周りの改善 4. dyn Traitを使いやすくする
1. 学習しやすくする: Flatten the (learning) curve
7 推論が強化されて省略できたり、新しいlet-else構文が追加されたりします https://github.com/rust-lang/rust/pull/93628
非同期周りの話は次のセッションをチェック! https://keens.github.io/pdf/tfcon.pdf
9 1. 機能のライフサイクルを管理しやすくする • RFC 3240: 標準化時の名前衝突を回避 2. より豊富な抽象化 3.
開発者体験のカスタム • エラーメッセージとかLinterのカスタマイズとか 4. 相互運用性 • エコシステム依存を減らすために存在型が拡張される予定 2. ライブラリ作成者を支援する: Help users help each other
10 より豊富な抽象化: impl Traitのtype aliasや非同期関数をtraitの中で定義できるようになる見通し
11 1. 文書化し、状態を一覧できるようにする 2. オーナーを明確にし、必要な部分で密なコミュニケーションをおこなう 3. オープンなプロセスをツールを効率的に使って改善 3. Rustに貢献しやすくする: Help
the Rust project scale
12 ダッシュボードを公開して見やすくしている
13 1. https://doc.rust-lang.org/edition-guide/editions/index.html 2. https://lang-team.rust-lang.org/roadmaps/roadmap- 2024.html 参考資料と宣伝 来週5/19開催 実務でRustを使うなかでのTipsを 紹介するイベントです。