Rust part22

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2024/01/20(土) 23:21:40.08ID:wyzQTwgG
公式
https://www.rust-lang.org/
https://blog.rust-lang.org/
https://github.com/rust-lang/rust

公式ドキュメント
https://www.rust-lang.org/learn

Web上の実行環境
https://play.rust-lang.org

※Rustを学びたい人はまず最初に公式のThe Bookを読むこと
https://doc.rust-lang.org/book/

※Rustを学ぶ際に犯しがちな12の過ち
https://dystroy.org/blog/how-not-to-learn-rust

※Rustのasyncについて知りたければ「async-book」は必読
https://rust-lang.github.io/async-book/

※次スレは原則>>980が立てること

前スレ
Rust part21
https://mevius.5ch.net/test/read.cgi/tech/1692105879/

ワッチョイスレ
プログラミング言語 Rust 4【ワッチョイ】
https://mevius.2ch.net/test/read.cgi/tech/1514107621/
2024/01/21(日) 22:36:05.82ID:/n8yifEU
>>https://mevius.5ch.net/test/read.cgi/tech/1692105879/990
一応知らない人のために書いておくけど

「Rustがunsafeコード一切なしでメモリアンセーフ」な事が判明してから半年近く経ってる
特定の機能導入のタイミングでコードが発見されたけど、
「Rustの仕様バグ」だと認識されていて直せない

>>4
そんな事並べて理解したつもりでも、分からないと言っている人の側の主張が正当なんだよ

最近はここでも保証って言われなくなっただろ、当たり前だよRustの仕様に健全性が無いのだから
たぶん知っていて話を逸らしているのか、過去スレでスルーしたかで、この指摘も無理やり矮小化してくるからな
(githubの議論でも矮小化して放置)
気を付けろよ

https://github.com/rust-lang/rust/issues/114936
2024/01/21(日) 22:51:42.90ID:w4jDa8WO
>>9
無意味な揚げ足取りをしてRustを叩きたい人はアンチスレへ
棲み分けしてください

Rustアンチスレ
https://mevius.5ch.net/test/read.cgi/tech/1509028624/
2024/01/22(月) 00:47:14.54ID:jqH5vdYX
仕様バグだから直せないじゃなくて
厳密なチェックをする実装は0から作ったほうが早いから
今使ってる確率的(笑)な実装は変更しないんだよね?
12デフォルトの名無しさん
垢版 |
2024/01/22(月) 03:17:34.54ID:laN06gwL
これマジ? どれくらいの確率で踏むんけ? コンパイルのバクはケアしたくないなあ
2024/01/22(月) 04:28:43.80ID:DrvqbiCd
>>12
意図的にvarianceの穴を突く無意味なコードを書かないと発生しないため>>9は無害
2024/01/22(月) 09:21:43.10ID:k43UrEGh
>>9
こんなコンパイラの脆弱性を突くようなコードを普通なら書かない定期
2024/01/22(月) 21:22:44.12ID:m6FRVxec
>>9は9年前の2015年から既知の有名なパターン
意味のあるプログラミングで絶対に踏むことはないため害はない
その特殊ケースに対応するデメリットの方が大きいため対策されていない
それらを踏まえたうえでIT大手が揃ってRustを採用しRust Foundationも設立された
2024/01/22(月) 21:31:04.02ID:l2He84BH
9のコードの意味が理解できないんだが何が問題なのか説明してくれ
2024/01/22(月) 22:53:37.35ID:6ImN7JeY
c++のテンプレートはチューリングマシンだから
無限ループを起こせるのは仕様の欠陥がどうか聞きたい
18デフォルトの名無しさん
垢版 |
2024/01/22(月) 23:05:33.08ID:YajFhzWL
f: impl for<'s> FnOnce(&'s str) -> (&'static str, [&'static &'s (); 0]) の説明だけ。
ライフタイム 's の str を引数にして、&'static str 型と、[&'static &'s (); 0] 型のタプルを返すクロージャが f ということ。
[&'static &'s (); 0] は &'static &'s () 型の長さ 0 の配列。
&'static &'s () は、ユニット型() のライフタイム 's の参照のライフタイム 'static の参照。

この &'static &'s () の部分で変なことが起きてそうと言っとるな。
2024/01/22(月) 23:14:04.77ID:T1sqP3ZB
>>17
C++ の仕様ではテンプレートの展開深度に上限を設定することを認めているのでチューリングマシンではない。
非現実的な回数のループが起こるのならそれは処理系の欠陥。
2024/01/22(月) 23:41:39.76ID:NA4FP1NO
>>15
1.65.0で新しく導入された回帰バグですって書いてあるし
2015年の#25860とも別だねってコメントも付いてますやん
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況