公式
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 part20
https://mevius.2ch.net/test/read.cgi/tech/1677771928/
ワッチョイスレ
プログラミング言語 Rust 4【ワッチョイ】
https://mevius.2ch.net/test/read.cgi/tech/1514107621/
探検
Rust part21
レス数が1000を超えています。これ以上書き込みはできません。
1デフォルトの名無しさん
2023/08/15(火) 22:24:39.45ID:xzxy4cgp952デフォルトの名無しさん
2024/01/20(土) 12:33:36.69ID:wJQgtkwZ 昔は全体の性能に余裕があって I/O (ストレージと通信) が極端に足を引っ張る状況だったから言語処理系の動作速度は問題にならなかったけど今は全ての性能をギリギリまで絞り出す勝負に変わってる感じだね。
953デフォルトの名無しさん
2024/01/20(土) 12:46:54.29ID:+pH1NoHl Rust言語は
・タイプセーフ、メモリセーフによる高い安全性
・並列プログラミング処理設計
・ガベージコレクタのようなランタイム無しに動作
だから、これらを活かせる製品に採用したらいいんじゃないかな
いまどきそんなのは組み込みロボットとかカーネルやエンコーダデコーダくらいしかないような気がするけど
・タイプセーフ、メモリセーフによる高い安全性
・並列プログラミング処理設計
・ガベージコレクタのようなランタイム無しに動作
だから、これらを活かせる製品に採用したらいいんじゃないかな
いまどきそんなのは組み込みロボットとかカーネルやエンコーダデコーダくらいしかないような気がするけど
954デフォルトの名無しさん
2024/01/20(土) 12:56:12.54ID:UT8XEnd7955デフォルトの名無しさん
2024/01/20(土) 13:15:54.83ID:KWXCbsaH ウェブっていうかwasmじゃね?
rustじゃないけどffmpegのwasm実装は使ったことある
rustじゃないけどffmpegのwasm実装は使ったことある
956デフォルトの名無しさん
2024/01/20(土) 13:17:39.73ID:NDqmkpk/ >>954
Webって言っても大規模なユーザーがいるようなものじゃない?
大した事無いサービスで、スペック高い人が必要なRustはまだまだ辛い気がする。Javascript並みに誰でも使えますって世の中になったらRust一択でも良いのかもしれないけれど。
Webって言っても大規模なユーザーがいるようなものじゃない?
大した事無いサービスで、スペック高い人が必要なRustはまだまだ辛い気がする。Javascript並みに誰でも使えますって世の中になったらRust一択でも良いのかもしれないけれど。
957デフォルトの名無しさん
2024/01/20(土) 13:22:10.20ID:KBzblFQB AWSもGCPもサーバーレス環境とかのランタイムや下周りがだいたいRustで書いてある
958デフォルトの名無しさん
2024/01/20(土) 13:22:24.95ID:lxegQoou CO2排出量は難しいな
Rust書けない人間がCO2排出するだけのうんこ生産機になってしまうのもあんまエコじゃない気がする
Rust書けない人間がCO2排出するだけのうんこ生産機になってしまうのもあんまエコじゃない気がする
959デフォルトの名無しさん
2024/01/20(土) 13:24:24.78ID:tKcafxZR actix-webはどうなん?自分はよく知らんのだが使ってる人いるんけ?
960デフォルトの名無しさん
2024/01/20(土) 13:24:56.70ID:NDqmkpk/ >>958
そんなこと言ってると、Rustへのリスキリング時のco2排出量もRustのコストって言われちゃうぞ。
そんなこと言ってると、Rustへのリスキリング時のco2排出量もRustのコストって言われちゃうぞ。
961デフォルトの名無しさん
2024/01/20(土) 13:27:59.09ID:KBzblFQB CO2排出量を考えて、コンパイル中は息を止めている
962デフォルトの名無しさん
2024/01/20(土) 13:34:01.02ID:vYJJrZqN JavaがOracle事件で終わって脱SpringでRustのActixがついに普及するかなと思ったらC#のASP.NETにみんな行っちゃった
963デフォルトの名無しさん
2024/01/20(土) 13:39:08.81ID:tKcafxZR >>962
そうなんか…
そうなんか…
964デフォルトの名無しさん
2024/01/20(土) 13:57:32.93ID:ngmk9luX Javaが脱Springなんて馬鹿げた事言い出してるのかと見間違えたが
脱Javaの話か
Rustは学習コスト高いからJavaでやってた様な大人数プロジェクトには向かんだろう
脱Javaの話か
Rustは学習コスト高いからJavaでやってた様な大人数プロジェクトには向かんだろう
965デフォルトの名無しさん
2024/01/20(土) 14:59:14.28ID:ppE6WkEJ みんな経済合理性でRustを選択するんだよな
966デフォルトの名無しさん
2024/01/20(土) 15:49:27.64ID:w9m16ZcP >>952
特に機械学習ではその方向が顕著
MLIRみたいにSIMDやGPUを使う前提でIRが設計されてる
Node.jsが切り開いた非同期IOの登場もでかい
これによってIOの比重が高いプログラムでもIO待ちがなくなり
さらにマルチコア、GPUを活かせる環境が整った
一方Rustはtokioなどの非同期IOを実現できるフレームワークが山のようにある
さらにSIMD命令を直接使える仕様も整備されてきている
(LLVMの最適化によって勝手に使われることも多いが)
マルチスレッドは言わずもがな
他の言語でこれらを全てサポートしている言語はない
現在の最先端の環境を活かせる言語は他に選択肢がない
特に機械学習ではその方向が顕著
MLIRみたいにSIMDやGPUを使う前提でIRが設計されてる
Node.jsが切り開いた非同期IOの登場もでかい
これによってIOの比重が高いプログラムでもIO待ちがなくなり
さらにマルチコア、GPUを活かせる環境が整った
一方Rustはtokioなどの非同期IOを実現できるフレームワークが山のようにある
さらにSIMD命令を直接使える仕様も整備されてきている
(LLVMの最適化によって勝手に使われることも多いが)
マルチスレッドは言わずもがな
他の言語でこれらを全てサポートしている言語はない
現在の最先端の環境を活かせる言語は他に選択肢がない
967デフォルトの名無しさん
2024/01/20(土) 16:00:45.48ID:tKcafxZR RustのWebアプリケーションは未履修だけどぜひやりたいなあ
968デフォルトの名無しさん
2024/01/20(土) 18:46:27.21ID:PTOG17pe969デフォルトの名無しさん
2024/01/20(土) 18:55:33.87ID:I+Fu8n3P >>964
90年代後半にコボラーがJavaでWebアプリを作れるようになるための学習コストに比べればRustの学習コストは断然低い
90年代後半にコボラーがJavaでWebアプリを作れるようになるための学習コストに比べればRustの学習コストは断然低い
970デフォルトの名無しさん
2024/01/20(土) 19:12:06.87ID:6DBgVQg4 >>969
その時期にいた純粋コボラーって定年間際のジジイじゃん。そりゃ学習コスト高いわ。
その時期にいた純粋コボラーって定年間際のジジイじゃん。そりゃ学習コスト高いわ。
971デフォルトの名無しさん
2024/01/20(土) 19:21:51.44ID:w9m16ZcP httpclientもそれぞれのイベントループに対応したものをつかわないとダメだから割と面倒なんだよね
使い方もフレームワークによってかなりクセが違っていて面倒だし
ぶっちゃけWebはGoやpythonでいいんじゃねーかって思う
使い方もフレームワークによってかなりクセが違っていて面倒だし
ぶっちゃけWebはGoやpythonでいいんじゃねーかって思う
972デフォルトの名無しさん
2024/01/20(土) 19:26:03.92ID:tKcafxZR Goでいいは分かる
973デフォルトの名無しさん
2024/01/20(土) 19:56:32.80ID:k6CjZuQW Go のランタイムサポートは分厚めだがどうせ要るもの(やること)と考えればそんなに速度的に不利なわけではないよな。
974デフォルトの名無しさん
2024/01/20(土) 20:11:15.24ID:u/fg5YR1 速度的にはGoで十分なんだけど型とか貧弱すぎるんだよな…
sumタイプとパターンマッチくらいは欲しい
sumタイプとパターンマッチくらいは欲しい
975デフォルトの名無しさん
2024/01/20(土) 20:17:19.49ID:tNrs3Odf976デフォルトの名無しさん
2024/01/20(土) 21:17:45.54ID:w9m16ZcP >>975
いやデファクトがあるのは良いけど
例えばコマンド実行1つとっても
tokio::process::commandとか使わなきゃいけなくてなんだかなあと
非同期版じゃないのと区別しなきゃいけなくて嫌気が刺す
まあpythonもasync使えば同じことなのだけど
いやデファクトがあるのは良いけど
例えばコマンド実行1つとっても
tokio::process::commandとか使わなきゃいけなくてなんだかなあと
非同期版じゃないのと区別しなきゃいけなくて嫌気が刺す
まあpythonもasync使えば同じことなのだけど
977デフォルトの名無しさん
2024/01/20(土) 21:24:03.71ID:w9m16ZcP まあ俺はRust信者だから使うのだけど普通の人はなかなか辛いんじゃないかなーと
その点Goは何も考えなくて良いしpythonもasync使わなけりゃ同期的に書けるし
その点Goは何も考えなくて良いしpythonもasync使わなけりゃ同期的に書けるし
978デフォルトの名無しさん
2024/01/20(土) 21:48:04.29ID:USm4U3n4 >>976
PythonもasyncはそうだしJavaScript(Node)も同期execと非同期exec分かれているし
動作が異なるのだから別になるのは当たり前
もちろんRustでも同様で
そもそも関数の返り値が異なる
だから関数が分かれているのは正しい
したがって一番下位のライブラリが別であることに何ら問題はない
一方で中位ライブラリ作成側の視点に立つと
同期か非同期かだけの違いでasync/awitを除いて全く同じ構造の関数を作ることになる
そのため『?async』キーワードによるジェネリック化がRustでは進められている
期待しているのはこの話でよいのか?
PythonもasyncはそうだしJavaScript(Node)も同期execと非同期exec分かれているし
動作が異なるのだから別になるのは当たり前
もちろんRustでも同様で
そもそも関数の返り値が異なる
だから関数が分かれているのは正しい
したがって一番下位のライブラリが別であることに何ら問題はない
一方で中位ライブラリ作成側の視点に立つと
同期か非同期かだけの違いでasync/awitを除いて全く同じ構造の関数を作ることになる
そのため『?async』キーワードによるジェネリック化がRustでは進められている
期待しているのはこの話でよいのか?
979デフォルトの名無しさん
2024/01/20(土) 23:05:04.71ID:w9m16ZcP >>978
いや見た目は似ててもpythonとはだいぶ違うよ
まずpythonでのasync defは単なるコルーチンオブジェクトなので非同期とか関係ない
これにより恐ろしい柔軟性を持ってる
さらにWebにおいてはASGIという非同期Webフレームワークが満たすべき仕様をまず決めた
その仕様を満たしさえすればどのような実装でも非同期の機能を満たせるような仕様となっている
そこにはもうイベントループなどの概念は消え去っている
さらに同期版と同居できる仕様となっている
なのでdjangoなどは同期版と非同期版の切り替えが可能となっている
このように明らかにユーザーフレンドリーな姿勢を貫いている
いや見た目は似ててもpythonとはだいぶ違うよ
まずpythonでのasync defは単なるコルーチンオブジェクトなので非同期とか関係ない
これにより恐ろしい柔軟性を持ってる
さらにWebにおいてはASGIという非同期Webフレームワークが満たすべき仕様をまず決めた
その仕様を満たしさえすればどのような実装でも非同期の機能を満たせるような仕様となっている
そこにはもうイベントループなどの概念は消え去っている
さらに同期版と同居できる仕様となっている
なのでdjangoなどは同期版と非同期版の切り替えが可能となっている
このように明らかにユーザーフレンドリーな姿勢を貫いている
980デフォルトの名無しさん
2024/01/20(土) 23:17:14.31ID:wyzQTwgG981デフォルトの名無しさん
2024/01/20(土) 23:26:48.19ID:HZE0SdTu >>980
コルーチンではないでしょ
コルーチンではないでしょ
982デフォルトの名無しさん
2024/01/20(土) 23:49:39.00ID:nUH4CzWh Rustのasyncはstackless croutineでstate machineとなっている
個別stackのresouceもswitchingも不要なため軽くて有利
個別stackのresouceもswitchingも不要なため軽くて有利
983デフォルトの名無しさん
2024/01/20(土) 23:50:29.43ID:u/fg5YR1 Rustのasyncは(スタックレス)コルーチンである
Rustのasyncは(スタックフル)コルーチンではない
どっちも正しいとは思うけど
Rustのasyncは(スタックフル)コルーチンではない
どっちも正しいとは思うけど
984デフォルトの名無しさん
2024/01/21(日) 10:13:23.50ID:VnWGTEfZ985デフォルトの名無しさん
2024/01/21(日) 11:18:24.63ID:JCOE1HZY DAD御用達?
986デフォルトの名無しさん
2024/01/21(日) 11:24:54.33ID:8LqvrPkW 物理攻撃にソフトウェアを活用するってある意味「お花畑」だよな
987デフォルトの名無しさん
2024/01/21(日) 11:29:12.59ID:7K9itJgV パパ活か?DoDだろ
DoD御用達はAdaだぞ
DoD御用達はAdaだぞ
988デフォルトの名無しさん
2024/01/21(日) 11:46:34.67ID:VnWGTEfZ やっぱりAdaしかないか
プリプロセッサ使うのもNGだからマクロがダメなんかな
プリプロセッサ使うのもNGだからマクロがダメなんかな
989デフォルトの名無しさん
2024/01/21(日) 11:59:39.08ID:dFB+Bg2+ とはいえF-35はC++だったんだし、そのうちRust採用されてもおかしくはないけどな
990デフォルトの名無しさん
2024/01/21(日) 12:09:12.81ID:4CYZ0hXB The Book読んでコード打ち込んだりしたが理解できた気がしない
次はどうすればいいの
次はどうすればいいの
991デフォルトの名無しさん
2024/01/21(日) 13:24:30.49ID:8LqvrPkW 仕様の次は実装とか
いま極端なところにいる奴は次はもう一方の極端に行けばいいし
ちょうどいい位置にいる奴は一生そこに居続ければいいのでは?
いま極端なところにいる奴は次はもう一方の極端に行けばいいし
ちょうどいい位置にいる奴は一生そこに居続ければいいのでは?
992デフォルトの名無しさん
2024/01/21(日) 14:20:11.30ID:sCtD39A+ >>990
理解できてないと感じるのがunsafeやasyncやマクロ辺りならそこは一旦放置して小さいCLIツールをいくつか書いて実践経験を一度積むほうがいいかもしれない
逆にownership/reference/lifetime/generic/traitといったコアなところが理解できてないと感じるならオライリー本など別の入門書をすすめる
理解できてないと感じるのがunsafeやasyncやマクロ辺りならそこは一旦放置して小さいCLIツールをいくつか書いて実践経験を一度積むほうがいいかもしれない
逆にownership/reference/lifetime/generic/traitといったコアなところが理解できてないと感じるならオライリー本など別の入門書をすすめる
993デフォルトの名無しさん
2024/01/21(日) 15:14:08.20ID:eSjvKxMy994デフォルトの名無しさん
2024/01/21(日) 15:15:15.91ID:eSjvKxMy F-15は50年以上空を飛んでいることを思い出してほしい
Rustは50年後存在しない
Rustは50年後存在しない
995デフォルトの名無しさん
2024/01/21(日) 15:44:39.63ID:cX88PWDV996デフォルトの名無しさん
2024/01/21(日) 15:46:08.09ID:4rk7TZPC 統計学的に会社や国家、生物種の存続見込みを解析した例を見たことが有るな。
これまでの歴史が長いものはこれからも長く続く可能性が高い。
これまでの歴史が長いものはこれからも長く続く可能性が高い。
997デフォルトの名無しさん
2024/01/21(日) 15:50:57.32ID:eziZnnQK >>996
Javaみたいにホストがアホなことするとすぐ廃れるけどな
Javaみたいにホストがアホなことするとすぐ廃れるけどな
998デフォルトの名無しさん
2024/01/21(日) 16:55:47.23ID:4CYZ0hXB >>992
ありがと
ありがと
999デフォルトの名無しさん
2024/01/21(日) 19:43:22.00ID:/dcZ0aWP1000デフォルトの名無しさん
2024/01/21(日) 20:22:28.74ID:mpR7a4j6 >>994
C++みたいに、色々な実装がでてくれは、50年後にも生きてるんじゃない?
C++みたいに、色々な実装がでてくれは、50年後にも生きてるんじゃない?
10011001
Over 1000Thread このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 158日 21時間 57分 50秒
新しいスレッドを立ててください。
life time: 158日 21時間 57分 50秒
10021002
Over 1000Thread 5ちゃんねるの運営はUPLIFT会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《UPLIFT会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
4 USD/mon. から匿名でご購入いただけます。
▼ UPLIFT会員登録はこちら ▼
https://uplift.5ch.net/
▼ UPLIFTログインはこちら ▼
https://uplift.5ch.net/login
運営にご協力お願いいたします。
───────────────────
《UPLIFT会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
4 USD/mon. から匿名でご購入いただけます。
▼ UPLIFT会員登録はこちら ▼
https://uplift.5ch.net/
▼ UPLIFTログインはこちら ▼
https://uplift.5ch.net/login
レス数が1000を超えています。これ以上書き込みはできません。
ニュース
- 中国国営メディア「沖縄は日本ではない」… [BFU★]
- 中国国営メディア「沖縄は日本ではない」… ★2 [BFU★]
- 高市政権にパイプ役不在…日中高まる緊張 公明党の連立離脱影響、自民内にも懸念「自分でまいた種は自分で刈り取ってもらわないと」 [ぐれ★]
- 【こんなの初めて…】民泊には既にキャンセルも 中国の渡航自粛で [ぐれ★]
- 俳優 高岡蒼佑「エジプト出身とかナイジェリア出身とかの人が、日本の代表顔して移民の事とか話してるの見るとなんか違う気がする」★2 [Anonymous★]
- 「稼ぐのよ!」高市総理が電話ガチャ切りで伝えたこと 鈴木憲和農林水産大臣が国政報告会に出席 自身が目指す農政の方針語る [煮卵★]
- 【悲報】台湾「中国にパンダ返還した馬鹿な国があるらしい🤭」 [616817505]
- 【高市悲報】片山さつき、円安進行を受けコメント「為替の変動を緊張感を持って見極める」 [888298477]
- 中国国営放送「日本は琉球をただちに中国に返還せよ」 キタ━━━━(゚∀゚)━━━━!!!!! [314039747]
- 自民「高市の一言でこれまで積み上げてきた関係が駄目になる。言葉の重みを分かっていない。自分でまいた種は自分で刈り取ってもらう」 [256556981]
- 【高市悲報】アメリカ戦争省「あのさ、何回シミュレートしてもわーくに中国に負けちゃうんだよね🤗」 [359965264]
- 識者「『フリーパレスチナ』とかイキってる連中が台湾の話になると『中国を怒らせるな!』ってなる。ほんと左翼の正義って薄っぺらい」 [279254606]
