Rust part26

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2024/09/20(金) 22:18:38.38ID:c48cFuZJ
公式
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 part25
https://mevius.5ch.net/test/read.cgi/tech/1722354386/

ワッチョイスレ
プログラミング言語 Rust 4【ワッチョイ】
https://mevius.5ch.net/test/read.cgi/tech/1514107621/
2024/10/08(火) 08:44:17.05ID:eFef5p6V
>>174
詳しく
2024/10/08(火) 09:34:58.32ID:+McDiVVz
自分で定義してないtrait(T)を自分で定義してないstruct(S)に定義したい
impl T for S {
}
2024/10/08(火) 10:04:39.98ID:A/U5l8w3
>>177
できないのでどちらかをwrapして下さい
2024/10/08(火) 10:36:24.86ID:8N0aYuJN
>>177
orphan rule と呼ばれる制限。
どうしてこの制限が必要なのか、対処法のイディオムなどはググればいっぱい説明されてるよ。
180デフォルトの名無しさん
垢版 |
2024/10/08(火) 21:24:47.85ID:pQ+vP70p
>>175
知らないだけw
2024/10/08(火) 21:26:47.09ID:CJF5aBIv
>>180
やっぱり本当に馬鹿なんだな。
それに説明しても理解できない。
2024/10/08(火) 23:19:20.44ID:0gkuNx2u
>>176
https://nnethercote.github.io/perf-book/bounds-checks.html
2024/10/09(水) 08:10:07.07ID:6t9Q00Al
>>182
thx
184デフォルトの名無しさん
垢版 |
2024/10/09(水) 14:24:59.18ID:SE80KZZv
慈円乙
2024/10/09(水) 18:17:45.48ID:9TrJQGOx
>>175
あーあ,反ワクが自分で調べてくださいっていうのと同じか
自分で説明するとボロが出るから
2024/10/09(水) 21:57:24.09ID:O1I2MdzM
実験と質問の境界がなくなりかけている
質問なら自己解決もありうる
実験の場合、自分で考えた実験結果というのはただのデータ改竄
2024/10/09(水) 22:10:40.53ID:cHg2rcow
>>185
もしかして7回も打ってるの?
2024/10/09(水) 23:54:32.05ID:uqNnLm2k
米ホワイトハウス「ソフトウェアはメモリ安全でなければならない」との声明を発表:「C」「C++」よりも「Rust」などの言語を推奨
https://atmarkit.itmedia.co.jp/ait/articles/2403/18/news045.html
2024/10/10(木) 02:18:50.02ID:zQjmpUKF
>>188
Rustには権力による圧力が入ってきている。
市場経済、自由選択への権力介入だ。
2024/10/10(木) 02:21:09.33ID:zQjmpUKF
コンピュータの分野は権力介入が少なかったので、面白かったのに、
政治家やマスコミが入り込んできてめちゃくちゃになってきている。
2024/10/10(木) 07:08:10.03ID:UwcyK+WZ
与党が介入するなら野党に投票すればいい
192デフォルトの名無しさん
垢版 |
2024/10/10(木) 09:15:33.28ID:bwO1aVtU
コンピュータープログラムのアルゴリズムごときでノーベル賞とか
最近はホント可笑しい
2024/10/10(木) 09:54:14.90ID:UItC3qRM
ソフトウェア特許がろくでもないのでノーベル賞みたいな形のほうがマシだと思う。
良いとは言えんが。
2024/10/10(木) 21:54:50.97ID:7tvKCAT1
>>189
米政府は危険なC/C++を早く捨てて安全なプログラミング言語を使うことを推奨するとして、Rustを含めた複数の安全な言語を挙げているので大丈夫だよ。
ただしRust以外はガベージコレクション言語なので、C/C++と同等の速さやメモリ使用量を望むならばRustしか安全な言語の選択肢がない。
2024/10/11(金) 00:11:00.19ID:anwjy38M
AIと人間が競争するみたいな文脈では危険といえば相手に負けることしか思いつかなくなる
それ以外の安全性がどうでもよくなる
2024/10/11(金) 01:44:19.33ID:TjHLE0iw
>>194
結局、C/C++だけが潰される。
2024/10/11(金) 09:35:58.81ID:4zAbwXut
rustはガベコレはないけど、オブジェクトのライフタイムをコンパイル時にチェックして c++でいう deleteを自動でセットしてくれるのですか?
コンパイラはそんな複雑なことができて、結果も信頼できるのでしょうか
それとも、開発者が自由に書けないくらい、書き方に制約を設けてコンパイラにとって既知のパターンとなるようにしているのですかね
2024/10/11(金) 10:48:59.08ID:KVaSEz2e
>>197
まずはChatGPTにでも聞いて概要を理解しろ
2024/10/11(金) 13:50:24.29ID:fZFoy1Go
>>197
これはプログラム経験が浅いマネージャに聞かれそうな質問
まずC++のデストラクタを理解してるかどうかがポイントだな

「c++でいうdeleteを自動でセット」というフレーズから不穏なオーラを感じる
2024/10/11(金) 13:54:54.08ID:W/ZPwHBO
>>197
別に複雑なことはしていない
所有権の移動に厳密なだけ
2024/10/11(金) 14:05:51.40ID:anwjy38M
喩え話や類推で理解できてしまったら驚き屋の仕事が奪われるだろ
2024/10/11(金) 14:16:31.54ID:A4LeYzGx
>>197
言語機能は全部が絡み合って機能するので単純には言えない。
入門の文書が用意されてるんだから読みなさいよ。
きちんと使いこなそうと思わずに流し読みするくらいなら一日で読めるから。
2024/10/11(金) 14:26:39.61ID:onrBNldo
アメリカは、自由や市場経済を大事にする、と謳っておきながら、C/C++言語除外を官製強制するような国。どこが自由や市場経済なんだか。
2024/10/11(金) 16:56:32.95ID:Go9IkusF
せいぜい政府調達から外すとかでしょ
気にしすぎ
2024/10/11(金) 17:49:21.57ID:anwjy38M
足し算の交換法則なんかは永久に守られるのになぜC++の文法を守らないのか
これ需給とか政府とかチャチなもんじゃなくてもっと怖ろしい強制力だろ
2024/10/11(金) 18:19:53.55ID:A4LeYzGx
>>203
政府が顧客の一人として言ってるだけで、市場に対する強制じゃないよ。
影響力が強くはあるけども。
2024/10/11(金) 21:39:44.20ID:52UfM0Gk
民間は先行して既に自らRustへシフトが進んでいる状況を踏まえて
政府が報告書をまとめたものだから
2024/10/11(金) 23:15:15.82ID:anwjy38M
ルールの例外を理解すれば自由度が上がる
たとえば猫と牛の違いが分かった奴は牛肉を食べる
分からん奴は菜食主義を強制されていると思い込むかも
209デフォルトの名無しさん
垢版 |
2024/10/12(土) 00:34:02.68ID:qdhjRNO+
交換法則は人間の関与の余地がない
C++の文法は所詮は禿が定義したもの
Rustも含めて換えて良い
2024/10/12(土) 01:14:45.15ID:gm00SVZq
「Security状問題である」と言われると人間には逆らえなくなる法則を利用し、
「衰退させたいライバル商品」を市場から消す商法がアメリカでは多用されている。
2024/10/12(土) 01:21:49.75ID:gm00SVZq
>>210
Security状 --> Security上
2024/10/12(土) 01:28:42.28ID:gm00SVZq
強力なC++開発環境が生まれる兆しを感じ、それを抑えるためにRustを推奨し出したのかもしれない。
213デフォルトの名無しさん
垢版 |
2024/10/12(土) 01:29:35.88ID:qdhjRNO+
Rustもそのうち排除されるよ
2024/10/12(土) 01:29:58.11ID:gm00SVZq
SNSでは、Wasmが、Rustと組み合わせる場合だけが強調される。
それは、そうでないと都合の悪い何かが出現したからではないか。
2024/10/12(土) 01:32:52.29ID:gm00SVZq
しかも、RustはJSやPythonやC#などを置き換える可能性も有るにもかかわらず、
C++の置き換えだけが強調されるのは、C++を絶対的に排除しなければならない
何かが彼らの中で起きているのではないか。WasmとC++の組み合わせが特に
排除されようとしている。
2024/10/12(土) 05:10:31.55ID:RKNycNvy
思い込み激しすぎ
2024/10/12(土) 06:57:43.97ID:IpPc9zS0
>>215
>RustはJSやPythonやC#などを置き換える可能性も有る

c++より学習難易度高いのに、置き換える可能性があるわけ無いだろ。
2024/10/12(土) 07:44:30.22ID:MfW7RByH
採用はRFPに記載されるようになってからだよね~
指定が無いからと言って、「Rustで書きます。生産性良く無いのでC++の1.n倍の費用がかかります!」
の提案書が通るとは思えない。
219デフォルトの名無しさん
垢版 |
2024/10/12(土) 07:50:17.08ID:qdhjRNO+
RustがC++の置き換えになるとかほざいてるのは
RustもC++も使えないアホだけだろ
2024/10/12(土) 07:51:04.20ID:DET419zt
blog.rust-lang.org/2024/09/05/impl-trait-capture-rules.html
> We surveyed crates on crates.io and found that the vast majority of cases
> involving return-position impl trait and generics had bounds that were too
> strong and which could lead to unnecessary errors (though often they were
> used in simple ways that didn't trigger an error).

わはは、結局大部分はちゃんと理解してないし使いこなせてもいないってこった
221デフォルトの名無しさん
垢版 |
2024/10/12(土) 07:51:41.07ID:qdhjRNO+
>>c++より学習難易度高い

これはC++の闇を知らんから言えるんだ
2024/10/12(土) 07:51:53.90ID:DET419zt
あ、やっと書けた
なんか最近5chはよく分からん規制入れとるね
2024/10/12(土) 08:03:30.55ID:MfW7RByH
せやな
2024/10/12(土) 08:20:08.48ID:hSwwQxA2
>>217
学習難易度が高いのは無駄に仕様が大きすぎるC++
Rustはモダンな抽象化も綺麗にまとまっていて仕様も小さい
2024/10/12(土) 09:32:07.50ID:DTlX8R5X
闇が嫌なら使わなければいい
使わない自由にこだわる理由がこれ

だが闇を認識できなければ、使うか使わないか検討する自由はほぼない
ないものをあると誤認しているだけ
元々自由がない状態なら、政府が介入しても、ないものを奪い取る心配はないってこと
2024/10/12(土) 10:14:12.54ID:o9Hly54Z
>>224
公式も認めている激烈絶壁の学習障壁を、あえて言わずにその主張をするのは詐欺ですな。

初心者向けのまともな学習書は出たのかしらん?
2024/10/12(土) 11:04:13.10ID:DTlX8R5X
学習時間が固定相場ならまともにはならない
昔の人がいうように修行は10年かかるとかいうレベルで時間が変動することを認めないと
2024/10/12(土) 11:56:03.05ID:pKFLyiMR
Rust 2024 editionっていつ出るの?
2024/10/12(土) 12:06:55.87ID:PWeoTkee
C++ のあかんところはわかってても間違う (間違いをコンパイラやランタイムサポートが検出しない) ところ。
わかってないときに自分がわかってないということに気づけないところ。

このつらさと難易度を天秤にかけたら Rust のほうがマシ。
2024/10/12(土) 12:33:44.48ID:qdhjRNO+
>>225
ごめんなにいってるかわかんない
Rustの闇の話?
231デフォルトの名無しさん
垢版 |
2024/10/12(土) 13:30:21.66ID:2nOFyk8I
中学生が好みそうなワード
2024/10/12(土) 14:53:53.79ID:DTlX8R5X
C++は完成品だという前提を強制してから自由に選ばせるのが闇だ
もしかして未完成なんじゃないかという解釈は必要
その解釈は誹謗中傷だという解釈もあるだろうが
未完成だったことにして完成品を作ってみたのがRustだとしたらやはり必要なことだった
2024/10/12(土) 14:55:04.31ID:BAZEi6Kk
c++もrustもどっちも使えたらええだけやろ
所詮言語ごときで何を騒いどんねん
2024/10/12(土) 15:40:11.45ID:3DzBYfs0
rust

消えてく言語なの?
2024/10/12(土) 16:05:55.21ID:91OPX9l9
Rustは一番嫌われている言語。
2024/10/12(土) 16:12:40.29ID:0WcQlR1j
普通10言語以上覚えて使い分けるだろ。
237デフォルトの名無しさん
垢版 |
2024/10/12(土) 16:55:23.16ID:2nOFyk8I
使い分けてるのは言語じゃなくてIDなんだよなあ
2024/10/12(土) 19:05:36.19ID:C7MzjPxF
Rustの安心安全でいいんだけど
一つだけ欠点があって、それは誰も使ってないってことなんだよな
2024/10/12(土) 19:31:25.97ID:PWeoTkee
んなこたない。
crates.io に登録されてたり github に上がってる大量のコードを誰が書いてるんだって話になるじゃないの。
他の言語との差はあるにしても誰も使ってないというほど少ないということもない。
2024/10/12(土) 20:05:40.69ID:Vo4EHhVz
Rust Surveyの回答者が1万人だからある程度熱心な人はそれくらいいて、全体で5-10万人ってとこかな
2024/10/12(土) 20:37:41.94ID:hSwwQxA2
ネットインフラが次々とRust製へ変わっていってるように
絶大な効果を発揮している
242デフォルトの名無しさん
垢版 |
2024/10/12(土) 22:46:05.65ID:2nOFyk8I
> ネットインフラが次々とRust製へ変わっていってる
具体的にどういうのがあるの?
無知なだけかもしれないけど自分はあまり実例を知らない (自分が知ってるのはFirefoxとDiscordくらい)
2024/10/12(土) 22:58:36.02ID:hSwwQxA2
ネットインフラが次々とRust製へ変わっていってるニュース記事ソース

例1
>【クラウド世界トップシェアAWS】
https://japan.zdnet.com/article/35183866/
>Rustで構築されたAWSサービスの例としては、
>コンテナーアプリ用のサーバーレスプラットフォーム「Lamba」を支える「Firecracker」、
>「Amazоn Simple Storage Service(S3)」、
>「Аmazоn Elastic Compute Cloud(EC2)」、
>コンテンツ配信ネットワーク「Аmazоn CloudFront」、
>LinuxベースのコンテナーOS「Bottlerocket」などがある。

例2
>【CDN世界トップシェアClоudflare】
https://www.publickey1.jp/blog/22/cloudflarenginxrusthttppingoracdncpu31.html
>CDNプロバイダのCloudflareは、同社のグローバルなCDNの基盤として長らく利用してきたNGINXに代えて、
>同社自身がRust製のHTTPプロキシである「Pingora」を開発し利 用していることを明らかにしました。
2024/10/12(土) 23:11:32.64ID:O1A52KxC
使えないって言ってるやつは頭が悪いだけ
2024/10/13(日) 00:02:47.57ID:bsYTaHhv
Linuxの時と同じような感じだな。熱狂的信者とアンチとの戦い方が。
結局、Linuxの場合、普及したのはサーバーサイドだけで、Desktopは5%程度にとどまることになった。
Rustの場合は、安全性重視の分野では天下をとるかもしれないが、安全性がそれほど重要でない分野はC++のままなのではないか。
2024/10/13(日) 00:05:30.88ID:bsYTaHhv
>>245
熱狂的信者は視野が狭く、アンチとは見ている世界が違う。
Linuxの場合も、信者は「Linuxは十分に普及した」と真顔でいまだに主張している。
しかし、アンチはDesktopを想定しているから話が合わない。
それと似たことがRust vs C++でも起きてくるのではないか。
2024/10/13(日) 00:07:58.43ID:bsYTaHhv
>>246
Linuxの場合も、20年経過した後、信者は「ほら普及したよね?」
アンチは「やはり普及しなかったな」という様相を呈している。
つまり、想定している「普及」や「勝利」の概念すら違っているのだ。
Rust vs C++でもそうなのではないか。
2024/10/13(日) 00:08:15.95ID:uHcnNqHT
>>245
セキュリティホールなど脆弱性があってもそれほど重要でない分野ってある?
2024/10/13(日) 00:20:19.98ID:bsYTaHhv
>>248
WordやExcel、画像エディタ、3Dモデラ、CADなどの一般アプリや、ゲームが
それに当たる。
2024/10/13(日) 00:20:21.18ID:bsYTaHhv
>>248
WordやExcel、画像エディタ、3Dモデラ、CADなどの一般アプリや、ゲームが
それに当たる。
2024/10/13(日) 00:23:13.27ID:URUAnEKd
草w
2024/10/13(日) 00:34:31.04ID:Lrm9f5J1
メモリ安全性や脆弱性に対する知識が皆無なんだろ
2024/10/13(日) 00:47:36.22ID:uHcnNqHT
>>249
それらは脆弱性があっては困る分野だ
2024/10/13(日) 00:51:33.48ID:9IW5Js7R
word文書保存すると無くなるってニュースが出ていたな
VSSもソースロストするって有名だったし

ま現物が無くなればアリストテレスでも論破不能だよね
2024/10/13(日) 09:21:11.59ID:2a75wgGc
普及とか繁殖の定義が違うと言われても困るな
理解できないのは定義の違いではなく
一体なぜ繁殖を定義しようと思ったのかを理解できない
2024/10/13(日) 12:12:14.31ID:UZT3uuKD
>>239
crates.io や github に上がってる Rust のプロジェクトって
もうだれもメンテしてませんってのも多いよね
C/C++ でもそういうのあるけど
257デフォルトの名無しさん
垢版 |
2024/10/13(日) 12:14:41.71ID:UZT3uuKD
>>246
>信者は「Linuxは十分に普及した」

スマホに限ってはそうだね
もちろん観てる世界が違う結果そう観えてる訳だね
2024/10/13(日) 12:17:07.38ID:UZT3uuKD
>>255
自分の世界で普及していないものは普及していないって言い張るタイプの人は一定数居る
2024/10/13(日) 15:16:40.73ID:9IW5Js7R
OpenCASCADE をRustに移植してくれる勇者は居らぬか?
2024/10/13(日) 16:07:57.49ID:OnT8jRlg
>>259
こういう感じ?
https://github.com/ricosjp/truck
2024/10/13(日) 16:54:43.62ID:2a75wgGc
視点を変えるだけで生存者が死者に変わるというのは極端過ぎる
生命にたいする侮辱を感じる
2024/10/13(日) 18:09:40.09ID:RQflUxIg
>>258
Unixの世界はもともと異なるメーカーのUnix規格に沿ったOSがあったわけだから、
無料のLinuxが普及するのは当たり前であって、ことさら強調されても意味が分からん
わけだよ。今で言うPC/AT規格やかつてのMSX規格の互換製品を作っても売れるのは
当たり前であって。
263デフォルトの名無しさん
垢版 |
2024/10/13(日) 18:11:20.56ID:RQflUxIg
>>262
MSXやPC/ATは互換性の有るものを非常に沢山のメーカーが当たり前の様に作っていた。
Unixもそれと同じ。誰でも作れるOSを無料化しただけみたいな。
264デフォルトの名無しさん
垢版 |
2024/10/13(日) 21:33:21.80ID:cfTcGRh7
Rustの話してよ
2024/10/13(日) 21:40:56.59ID:svBHWCr7
>>243
知らぬ間に我々が間接的に使ってるインフラが続々とRust製になってるんだな
身動きが取れない古くからの大きな遺物を除くと近い将来Rust製一色になりそうだ
2024/10/13(日) 22:30:12.40ID:wYeF4p9P
>>262
一々突っ込まないけどいっちょかみには
UNIXの歴史はそんなふうに見えてるんだなあ
2024/10/13(日) 23:37:02.43ID:2a75wgGc
補給と撤退はできて当たり前という伝統的価値観はunixの伝統とは全然関係ない
2024/10/14(月) 10:09:10.28ID:NZxYCisA
属人性排除は難易度が無限小という意味ではない
難易度がfnでもmutでもないだけ
それと、正解が複数あるのではなく誤解がいっぱいあるだけ
269デフォルトの名無しさん
垢版 |
2024/10/14(月) 10:31:37.38ID:9n6nFJIZ
いや正解は複数ある
誤解もいっぱいあるけど
270デフォルトの名無しさん
垢版 |
2024/10/14(月) 12:41:22.19ID:frzdEHtE
Haskellと同じ道をたどってる
271デフォルトの名無しさん
垢版 |
2024/10/14(月) 12:55:36.56ID:PAao37O/
Haskellよりは盛り上がってるでしょ
ライブラリとか割とあるし
2024/10/14(月) 13:34:21.16ID:Tepyp1Xi
エリート主義的で一般ウケしなかった関数型言語というレッテルを貼って一方的にぶん殴ってもいい存在がほしいなら、Scalaのほうが適任なんじゃね
知らんけど
2024/10/14(月) 13:37:01.70ID:9n6nFJIZ
Eiffelの再燃とか無いのかな
2024/10/14(月) 13:56:15.30ID:b6A9/4cN
>>270
大手IT企業のほとんどがRustを用いている
そして>>243の例のようにITインフラがRust製へと置き換わっていってる
2024/10/14(月) 14:13:01.64ID:UHTCVsGQ
このスレはバカ話が永遠に続くな
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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