Rust part18

■ このスレッドは過去ログ倉庫に格納されています
2022/12/10(土) 18:17:02.61ID:XSNoXTPt
公式
https://www.rust-lang.org/
https://blog.rust-lang.org/
https://github.com/rust-lang/rust

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 part17
https://mevius.5ch.net/test/read.cgi/tech/1665063793/
595デフォルトの名無しさん
垢版 |
2023/01/02(月) 19:09:09.75ID:YhyxjXQU
Rustの本くらい近所の町図書館にすら置いてるわ
2023/01/02(月) 19:16:20.01ID:1k7qyNCA
>>595 は「たくさん」という言葉すら理解できないのか...
2023/01/02(月) 19:16:22.22ID:f/84eqys
>>594
Kindleでええやん
598デフォルトの名無しさん
垢版 |
2023/01/02(月) 19:32:00.38ID:bVUI9Zvi
>>594
紀伊國屋書店はたくさんあるで
いまはこの本を通販で買って勉強中
https://www.kinokuniya.co.jp/f/dsg-01-9784873119595
599デフォルトの名無しさん
垢版 |
2023/01/02(月) 19:34:02.10ID:l4/Jezsd
今日は初詣に行ってきた
Rustさん普及しないで下さいと神頼みしてきた
600デフォルトの名無しさん
垢版 |
2023/01/02(月) 19:39:19.94ID:Qsv7PpLz
>>599
お前には無意味な願いだな
お前にRustの仕事が来るわけ無いもんなww
2023/01/02(月) 19:41:54.59ID:f/84eqys
>>600
どう考えてもゴミプログラマやゴミ企業が参入してくるなって意味やろ
602デフォルトの名無しさん
垢版 |
2023/01/02(月) 19:42:30.75ID:l4/Jezsd
>>600
それな
だけどタワマンをローンで買ったばかりだから簡単に辞められない😭
来週からまたRustやらなあかん😭
603デフォルトの名無しさん
垢版 |
2023/01/02(月) 19:59:34.00ID:VzocPQJy
>>586
ガイジばっかだからしょうがない
2023/01/02(月) 20:14:22.01ID:1k7qyNCA
>>598
まあ紀伊国屋さんなら...
でも検索すると結構あるんだな、ちょっと驚いたわ
605デフォルトの名無しさん
垢版 |
2023/01/02(月) 20:30:32.37ID:XEaXux8L
俺は実用にしてるのはC#で、Rustやら情報科学やらは教養のための修行だと思って勉強してる
2023/01/02(月) 20:57:28.93ID:1nPeGYO+
>>605
その目的ならRustではなくCをやるべき
607デフォルトの名無しさん
垢版 |
2023/01/02(月) 21:02:55.55ID:kxn3UFF9
Cは実用になっちゃうからな。
修行に向いてない。
2023/01/02(月) 21:11:43.92ID:f/84eqys
Rustでプログラミング始めるヤツなんておらんやろ
最低5言語くらいマスターしてる人が道楽として試すのから入るのが殆どじゃない?
609デフォルトの名無しさん
垢版 |
2023/01/02(月) 21:31:15.99ID:kxn3UFF9
Rustで生涯修行してればよい。
2023/01/02(月) 21:42:04.71ID:V6kLsOzd
今北なんだが、メモリー関連バグを潰せるだけでRust採用の価値があると思うけどそうじゃないんか
メモリー管理ミスが6割と聞いた
2023/01/02(月) 21:52:47.16ID:Gy4QUALO
>>610
linuxのドライバー作成ならいいかも
612デフォルトの名無しさん
垢版 |
2023/01/02(月) 22:10:50.96ID:QyytlXeP
>>598
紀伊國屋てw
ジュンク堂と双璧をなすラスボスですやん
613デフォルトの名無しさん
垢版 |
2023/01/02(月) 22:12:22.06ID:tEANpl9g
>>610
何事も良い面と悪い面があるので
自分のユースケースに当てはめてトレードオフを判断すべき
614デフォルトの名無しさん
垢版 |
2023/01/02(月) 22:14:14.00ID:Pa+Nwx1c
>>605
C#やってるならSwift勉強するといいぞ
教養とは違ってC#の力が向上する
2023/01/02(月) 22:25:45.48ID:U4Kt6Q5r
C#だのSwiftだのJavaだのスレチじゃバカども
2023/01/02(月) 22:34:00.16ID:+w7X3Pyb
ファイルシステムのパス回りをいい感じに抽象化してくれる(もしくは整形してくれる)クレートとかない?
env!("APPDATA")→"C:\Users\・・・\AppData\Roaming"
current_exe()→"\\?\C:\foo\・・・"
違うパス形式が入り混じるのはトラブルの元
2023/01/02(月) 22:48:29.16ID:65aHjL4I
まず Windows を窓から投げ捨てます
2023/01/02(月) 22:53:21.97ID:S0abPazk
>>616
fs::canonicalizeかければとりあえず形式は揃うんじゃない?
619デフォルトの名無しさん
垢版 |
2023/01/03(火) 00:03:36.64ID:z3nhExEu
>>610
頭脳の高い人はそもそもメモリ関バグを引き起こさないからRustである意味がない
620デフォルトの名無しさん
垢版 |
2023/01/03(火) 00:22:12.16ID:yTVwCgmJ
>>619 人間は間違う生き物だぞ
2023/01/03(火) 00:35:48.41ID:lG7LTjUD
>>620
頭脳明晰な人は
・論理を間違う頻度が極端に低い。
・テストの仕方が合理的でシステマチック。
・問題が発生しても原因箇所を突き止めるのが上手い。
622デフォルトの名無しさん
垢版 |
2023/01/03(火) 00:56:11.95ID:iu5XrAAr
頭脳明晰な人は人間の限界をよく理解している
注意資源を無駄なことに使わないためにどうすればいいかを考える

頭の悪い人にはこれが理解できない
2023/01/03(火) 01:02:17.21ID:lG7LTjUD
>>622
もっと頭のいい人は、特に注意して無くてもちゃんと出来てる。
2023/01/03(火) 01:17:35.62ID:FM7p8eEf
架空の「何でも完璧にできるプログラマー」などを頭の中で作り上げたところで何の意味もない
実際にそういう人だけで回せている組織を教えてくれ
625デフォルトの名無しさん
垢版 |
2023/01/03(火) 01:24:27.20ID:EuUAQyXR
>>621 そりゃすげえや
天才しか入れない会社であるGoogleで作られたソフトウェアには脆弱性が存在しないことになるんだからな
2023/01/03(火) 01:28:02.05ID:JZU75e4y
>>616
Ruby では、File.expand_path で、\ を、/ に変換できる
627デフォルトの名無しさん
垢版 |
2023/01/03(火) 03:16:16.17ID:KtR68cDI
>天才しか入れない会社であるGoogle
夢見過ぎw
算数100点オジと同じ発想だぞ
628デフォルトの名無しさん
垢版 |
2023/01/03(火) 03:21:18.09ID:4wglqwE1
>>623
最高に頭悪そうな発言だな
小学生1年生かよ
2023/01/03(火) 03:59:57.20ID:FAR4SCa0
>>618
サンクス。それを通すとUNCライクになるんか
リファレンスを見るとこの仕様が確定しているわけではなく
互換性の面でUNCライクのパスが望ましいのかという問題も
なんとなくだけど互換性はドライブレタースタートのほうが高そう
というかググってもパス情報の推奨される扱いとかよくわからんな
PathBufが返ることが多いためかmutをつけてる例が多く見えるけど
加工が終わった後もmutのままにしておくのが望ましいとも思えないし
2023/01/03(火) 07:04:07.60ID:njxOMnvb
>>625
そのGoogleがAndroidにRustを使うようになってバグが減ってるからGoogle程度では頭脳明晰な人ばかりではないらしい

https://japan.zdnet.com/article/35196972/
2023/01/03(火) 08:12:40.12ID:qI8JCo5P
○○バリア!
○○バリア貫通ビーム!
○○バリア貫通ビーム完封バリア!
まじで小学生と同じやな

グーグルの社員ですらメモリ管理をミスる
それより賢い天才が居ればそいつはCで良いよ、でも俺はそうじゃないのでRustを学んでるよ
ある意味メモリ管理を絶対にミスらない天才がコンパイラ
2023/01/03(火) 08:30:40.46ID:iKNX9wDb
>>629
mut が気になるならシャドーイングで消せばいいよ
let mut a = …

let a = a; // これ以降変更不可
2023/01/03(火) 10:24:54.22ID:Wjw3Ta6M
>>629
dunce crateのほうがいいかもね
ていうか本音はcurrent_exe()が完全修飾パス返すのをやめてほしいところ
2023/01/03(火) 12:37:20.83ID:guKgEgHI
ここってこんなにカオスだっけ
2023/01/03(火) 12:48:32.86ID:jNo/ZtXx
ディープステートに関わり持つやつが荒らしに来ている!
2023/01/03(火) 15:23:27.19ID:GGjfHYq/
頭のいい人の気持ちを一般人は理解できない。
2023/01/03(火) 15:33:14.38ID:GGjfHYq/
>>631
犬と人間くらいの知能差があるとすれば話は違ってくる。
Google社員は犬の中の秀才程度。
2023/01/03(火) 15:38:13.00ID:GGjfHYq/
>>631
俺からすれば、コンパイラは決まりきったことだけこなす単純馬鹿だけどな。
639デフォルトの名無しさん
垢版 |
2023/01/03(火) 16:20:19.42ID:N8ek48Mq
>>638
コンピュータなんだから当たり前では?
2023/01/03(火) 17:21:00.77ID:FAR4SCa0
>>632
となるとパスを整形する関数を用意して切り離すべきか

>>633
なかなかよさそうですね。使ってみます
>There are also Windows NT UNC paths (\\?\C:\foo), which are more robust and with fewer gotchas
>but are rarely supported by Windows programs. Even Microsoft's own!
思うことはみんな同じなんやなって
641デフォルトの名無しさん
垢版 |
2023/01/03(火) 18:42:10.36ID:yYGSV1g6
技術評論社の呪い。
2023/01/03(火) 18:46:23.16ID:EF4+Zmp+
技評技評言ってるヤツがしつこいが正直Rust流行ったからって技評のあの構成じゃ売れんだろ
2023/01/03(火) 18:49:28.25ID:FAR4SCa0
canonicalizeって存在しないパス情報を扱えない?のか(fsもdeucnも)
let path = dunce::canonicalize(Path::new(".\\foo")).unwrap();

は.\fooが存在しない場合Errが返ってパニックする
こうなるとパス情報は他の処理系と同じく文字列で保持して
使用するところでPathに変換するのがベターなのかな
644デフォルトの名無しさん
垢版 |
2023/01/03(火) 18:57:54.40ID:yYGSV1g6
>>643
それ、実はかなり深い問題だぞ。
特に、環境依存のないライブラリではな。
Rustだから安全ですとか言ってないで、経験豊富なC++スレにでも聞きに行け。
2023/01/03(火) 20:14:15.53ID:ZKwlKjAo
>>643
っstd::path::absolute
646デフォルトの名無しさん
垢版 |
2023/01/03(火) 20:19:29.87ID:yYGSV1g6
深い問題だと言ってるだろ。
Rustだから安全ですと言ってないで、わかってる人に聞きに行け。
2023/01/03(火) 20:23:30.48ID:iKNX9wDb
>>643
dunce::simplifiedでUNC除去するのがいいんじゃない?
別にPath自体は存在しないパスも保持できるしOsStringにするほどのこともないように見えるけど
648デフォルトの名無しさん
垢版 |
2023/01/03(火) 20:57:51.98ID:pV/Lv/4Y
>>645
\\?\にabsoluteは対応してなくない?
2023/01/03(火) 20:59:49.29ID:FAR4SCa0
>>645,647
そもそも一律で絶対パスに展開するのが最良なのか?ってところから再検討中
リモートになりうるパスを絶対パスに展開するとトラブルの発生率が増す気がしてきた
650デフォルトの名無しさん
垢版 |
2023/01/03(火) 21:01:15.66ID:yYGSV1g6
Rustスレでそんなこと質問したって無理だから。
いい加減諦めて実績のある言語スレに行け。
2023/01/03(火) 21:21:04.77ID:FM7p8eEf
誰も「Rustだから安全です」なんて言ってもいないしそもそも必ずしも安全でないことぐらい少しRustのこと勉強した人なら誰でも知ってる
2023/01/03(火) 21:39:29.06ID:MrpqBo7i
>>649
とりあえずPathBuf(参照ならPath)で保持しておいて必要な時にcomponents()で展開する感じがいいのかな
std::pathのPathBuf、Component、Prefixあたりでそれなりに抽象化はできてると思う
あとは目的次第
2023/01/03(火) 21:42:19.01ID:nBTO23xG
>>651
>>231
654デフォルトの名無しさん
垢版 |
2023/01/03(火) 21:54:07.94ID:yYGSV1g6
>>651
知ってたらRustなんか使わんだろ。
2023/01/03(火) 21:57:01.67ID:njxOMnvb
しかし何でこんなにアンチ多いんだろうな
ノイジーマイノリティのような気もするけど
海外だと人気あるのにな
656デフォルトの名無しさん
垢版 |
2023/01/03(火) 21:57:32.41ID:ma6uRps2
Rustは使うこと自体が修行だからだよ
657デフォルトの名無しさん
垢版 |
2023/01/03(火) 21:59:13.22ID:3FZZMCLr
C/C++のように黒魔術を使いたい
2023/01/03(火) 22:14:16.03ID:iKNX9wDb
>>655
多いって言っても結局はいつもの人が連投してるだけだしせいぜい数人では
他のSNSやリアルではこんな人見たことないしなぁ
2023/01/03(火) 22:17:50.62ID:MrpqBo7i
あくまでこのスレの雰囲気からの判断だけど
自分は万能で何でもできると思ってるタイプの人間がどうしてもRustを使いこなせなくて
自分が理解できない言語は欠陥言語に違いないって感じで叩いてる印象
多少扱いにくい言語でもHaskellみたいにマイナーならここまで荒れなかったかもしれない
660デフォルトの名無しさん
垢版 |
2023/01/03(火) 22:23:59.76ID:yYGSV1g6
Haskellも叩かれてただろ。
技術評論社のステマが過ぎるんだよ。
2023/01/03(火) 22:56:34.25ID:LnW2mOli
>>659
「すっぱい葡萄」だな
2023/01/03(火) 23:01:13.76ID:EF4+Zmp+
少なくともRustを使えっていう現場は今のところ日本では皆無だと思うけどね
2023/01/03(火) 23:03:15.73ID:5f9B2sCv
>>659
C/C++ は文法が無茶苦茶で扱いにくい部類なんだがなんだかんだで資料も多いし
慣れている人も多いから「これが普通」みたいな感覚になっちゃってるんだよな。
そこから遠い言語は「なんか普通じゃないやつ」に見えてしまうんだと思う。

言語としてスマートであろうがなかろうがエコシステムが充実してるほうが強いので
そこで C/C++ が長く支配的な立場だったけど現状の Rust なら十分すぎるほどに
充実してきてるんだから用途的にマッチするなら使えばいいと思うんだがなぁ。
664デフォルトの名無しさん
垢版 |
2023/01/03(火) 23:11:21.73ID:Le3CBufs
>>659
叩かれてるうちが華よ。
Haskellスレの↓が的を射ている。2023年、Rustでも見放しが起きるかもよ。
https://mevius.5ch.net/test/read.cgi/tech/1639713446/181
2023/01/03(火) 23:18:33.15ID:jBK7hIQX
>>663
Rustはそれ以上に変な文法だ。
2023/01/03(火) 23:19:10.28ID:jBK7hIQX
>>659
使いこなせないんじゃなくて、魅力を感じない。
2023/01/03(火) 23:19:50.78ID:mPQC6C/f
新着レスの表示を押したらgihyoアンチ出てきて笑ってしまった
2023/01/03(火) 23:23:41.66ID:jBK7hIQX
なお、Rustが欠陥言語なのはハッキリ分かってる。
669デフォルトの名無しさん
垢版 |
2023/01/03(火) 23:26:45.90ID:tE3kJFmJ
https://mevius.5ch.net/test/read.cgi/tech/1639713446/181
になぞらえよう。

2022年、NSA(アメリカ国家安全保障局)公認メモリ安全言語にGoが入った時点で、
「Rustが自賛する」メモリ安全は「白けた話」になった。
Rustはもうどうでもいい。
2023/01/03(火) 23:27:03.95ID:EF4+Zmp+
>>660
お前にとって技術評論社はギフハブか何かに見えてるのか?
2023/01/03(火) 23:48:42.74ID:jBK7hIQX
使いたいけど使えない人 = 能力不足。
使えるけど使いたくない人 = 個人の選択の自由。
俺は後者だから。
672デフォルトの名無しさん
垢版 |
2023/01/04(水) 00:40:30.83ID:DBMM4FaV
技術評論社が自演ステマする言語はすべて潰れる。
2023/01/04(水) 00:42:55.13ID:ZDKq+a5p
文字列のパスの正当性をチェックしてくれるクレートとかないんだろうか
いわゆる汚染チェックだがダメ文字が含まれている、記法が有効ではない等々
WindowsのAPIにそれっぽいのがないかと思ったけど見つけられんかった
GetFullPathNameはファイルのみでディレクトリ名は不可っぽいし
exist類を利用する方法も出てくるけどこれはファイルやディレクトリがある
ケースでしか使えない
674デフォルトの名無しさん
垢版 |
2023/01/04(水) 00:55:50.44ID:BfGbXrWm
2022年 はちみつ味の複製ポエムバレしてRustは白けた話になった
2023年 標準ライブラリ軽視からのクレート探しの自走力無き苦行
合計:白けた話+苦行=見放し
2023/01/04(水) 01:06:23.83ID:U+qe0cea
いままでC/C++の代わりになると云われた言語たちがどれだけ敗走したことか
そのRustの力とやら、見せてもらおうか!
676デフォルトの名無しさん
垢版 |
2023/01/04(水) 01:06:49.84ID:tdp90SFj
>>657
ハイジェニックマクロはどうだい?
2023/01/04(水) 02:42:42.79ID:qTJ/GIFa
Rust使わないことを選んだのなら、こんなとこで無駄な時間使ってないでC/CPPのスレで活躍したほうが良いのでは?
2023/01/04(水) 03:10:48.22ID:U+qe0cea
Rust「うあ~!汚コード増し増し負けたンゴ~!」
679デフォルトの名無しさん
垢版 |
2023/01/04(水) 09:03:32.34ID:oXSJ1jtE
>>662
ここのRust'erも大体は海外企業勤めでしょ
国内は仕事無いし
2023/01/04(水) 09:34:24.21ID:lFNs7lW+
>>662
わかんないよ、数年前だけどAdaの仕事があったし
まあ研究所からだけどウチの会社にAdaなんて書けるやつがいることにビビったわ
681デフォルトの名無しさん
垢版 |
2023/01/04(水) 15:33:07.79ID:vtx89qb1
ま、ぶっちゃけ、RustよりSQL覚えた方が仕事はあると思うよ。
2023/01/04(水) 15:42:42.57ID:ppyTErtg
カーネルドライバのいくつかがRustで書かれ始めちゃってるので
いやでもぶち当たる日が来るので仕方なく勉強してます。
今のところはクソ言語と言い切れるほどのクソさにはぶつかってないかな
683デフォルトの名無しさん
垢版 |
2023/01/04(水) 16:09:30.84ID:KNHhQhy0
基本的にクソだけど我慢出来ないほどではない
2023/01/04(水) 18:43:18.99ID:I7h9hggJ
>>659
叩かれてない言語は多くの人が使いこなしてるって意味だねw
2023/01/04(水) 18:51:29.68ID:MrWX6jB2
プロファイラーの皆さん鑑定お願いします
https://mevius.5ch.net/test/read.cgi/tech/1672409791/27
https://mevius.5ch.net/test/read.cgi/tech/1670663822/673
2023/01/04(水) 19:22:28.35ID:EQzsTg8p
オッサンだけど女の子に生まれて百合恋愛がしたいだけの人生だった、女の最大の特権って百合ができる事だよな
2023/01/04(水) 19:56:07.97ID:lFNs7lW+
>>666
なんで魅力を感じない言語のスレなんてわざわざ見てるんだ?
暇すぎるだろw
688デフォルトの名無しさん
垢版 |
2023/01/04(水) 19:58:59.00ID:Ms6LgXDx
業務で使わされてるから
2023/01/04(水) 20:25:18.15ID:5/zWl+ll
>>687
悪い評価も言論の自由な社会では大事。
2023/01/04(水) 20:45:25.47ID:lFNs7lW+
>>689
正しい評価ならな
無能の誹謗中傷は要らん
2023/01/04(水) 20:48:18.41ID:5/zWl+ll
>>690
正しい評価のつもりだ。
692デフォルトの名無しさん
垢版 |
2023/01/04(水) 20:55:18.09ID:QxUfEWbZ
技術評論社のステマが最も有害。
2023/01/04(水) 21:20:30.26ID:lFNs7lW+
>>691
根拠も示さずに正しいつもりとか言われてもね

> なお、Rustが欠陥言語なのはハッキリ分かってる。
694デフォルトの名無しさん
垢版 |
2023/01/04(水) 21:23:31.68ID:QxUfEWbZ
Rustには欠陥が無いようなことを言い出したぞコイツ。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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