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
Rustで定数式を扱う
Search
Kazumasa Yamamoto
October 27, 2020
Programming
0
400
Rustで定数式を扱う
Kazumasa Yamamoto
October 27, 2020
Tweet
Share
More Decks by Kazumasa Yamamoto
See All by Kazumasa Yamamoto
ユニークビジョンの Rust 活用事例
fill9120
0
1.2k
Rust & AWS X-Ray による分散トレーシングの実現
fill9120
0
2.4k
Rust製プロダクトを 3年以上運用して得たノウハウ
fill9120
0
830
Messaging APIを駆使した ChatGPT ボットのUX改善
fill9120
0
350
Rust を開発言語として採用してからの取り組み
fill9120
1
1.8k
ストラクチャードコミュニケーション
fill9120
0
100
Cloudflare PagesにVue.jsアプリをデプロイしてみた
fill9120
0
750
Rustでディープラーニング
fill9120
0
360
LINE BotとLIFFを使って謎解きアプリを作った話
fill9120
0
610
Other Decks in Programming
See All in Programming
データベースのオペレーターであるCloudNativePGがStatefulSetを使わない理由に迫る
nnaka2992
0
250
「個人開発マネタイズ大全」が教えてくれたこと
bani24884
1
280
良いコードレビューとは
danimal141
7
4.1k
複数のAWSアカウントから横断で 利用する Lambda Authorizer の作り方
tc3jp
0
120
CloudNativePGを布教したい
nnaka2992
0
120
JAWS Days 2025のインフラ
komakichi
1
130
第3回関東Kaggler会_AtCoderはKaggleの役に立つ
chettub
3
1.2k
ML.NETで始める機械学習
ymd65536
0
240
SwiftUI移行のためのインプレッショントラッキング基盤の構築
kokihirokawa
0
160
Datadog DBMでなにができる? JDDUG Meetup#7
nealle
0
150
Boos Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
510
メンテが命: PHPフレームワークのコンテナ化とアップグレード戦略
shunta27
0
310
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
94
13k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
The Invisible Side of Design
smashingmag
299
50k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Done Done
chrislema
182
16k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Designing for humans not robots
tammielis
250
25k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.2k
Site-Speed That Sticks
csswizardry
4
410
We Have a Design System, Now What?
morganepeng
51
7.4k
Transcript
Rustで定数式を扱う ユニークビジョン株式会社 山本 一将
自己紹介 2 ⚫ 名前:山本 一将(@kyamamoto9120) ⚫ 所属:ユニークビジョン株式会社 ⚫ 言語:C++, Rust,
Python, Ruby ⚫ 趣味:将棋、キャンプ、DIY、野球観戦 ⚫ 実績:2015年 世界コンピュータ将棋選手権9位
アジェンダ 3 ① 定数式とは何か ② Rustの定数式の状況 ③ 簡単な使用方法(フィボナッチ数列を例に)
定数式とは 4 • コンパイル時に評価可能な式のこと • Rustでは const fn で始まる関数が定数式となる
Rustにおける定数式 5 ① 1.31.0から導入 • ローカル変数が使えない • ループ文、制御文が使えない • 引数を&mutにできない
② 1.46.0までに徐々に制限緩和 • ローカル変数が使える! • matchやwhileが使える!
現時点での制限 6 ① for文は使えない ② 評価できる式の深さに制限がある
まとめ 7 ⚫ 制限が一部緩和されたがまだまだ実用レベルではない • 自由度はまだC++14のconstexprにも届かない • 標準ライブラリの対応もまだまだ ⚫ 当面はlazy_static!を使用した方が幸せ
⚫ それでも1.46.0での制限緩和は希望がある!
ありがとうございました