Rust part21
..
977:デフォルトの名無しさん
24/01/20 13:24:56.70 NDqmkpk/.net
>>958
そんなこと言ってると、Rustへのリスキリング時のco2排出量もRustのコストって言われちゃうぞ。
978:デフォルトの名無しさん
24/01/20 13:27:59.09 KBzblFQB.net
CO2排出量を考えて、コンパイル中は息を止めている
979:デフォルトの名無しさん
24/01/20 13:34:01.02 vYJJrZqN.net
JavaがOracle事件で終わって脱SpringでRustのActixがついに普及するかなと思ったらC#のASP.NETにみんな行っちゃった
980:デフォルトの名無しさん
24/01/20 13:39:08.81 tKcafxZR.net
>>962
そうなんか…
981:デフォルトの名無しさん
24/01/20 13:57:32.93 ngmk9luX.net
Javaが脱Springなんて馬鹿げた事言い出してるのかと見間違えたが
脱Javaの話か
Rustは学習コスト高いからJavaでやってた様な大人数プロジェクトには向かんだろう
982:デフォルトの名無しさん
24/01/20 14:59:14.28 ppE6WkEJ.net
みんな経済合理性でRustを選択するんだよな
983:デフォルトの名無しさん
24/01/20 15:49:27.64 w9m16ZcP.net
>>952
特に機械学習ではその方向が顕著
MLIRみたいにSIMDやGPUを使う前提でIRが設計されてる
Node.jsが切り開いた非同期IOの登場もでかい
これによってIOの比重が高いプログラムでもIO待ちがなくなり
さらにマルチコア、GPUを活かせる環境が整った
一方Rustはtokioなどの非同期IOを実現できるフレームワークが山のようにある
さらにSIMD命令を直接使える仕様も整備されてきている
(LLVMの最適化によって勝手に使われることも多いが)
マルチスレッドは言わずもがな
他の言語でこれらを全てサポートしている言語はない
現在の最先端の環境を活かせる言語は他に選択肢がない <
984:デフォルトの名無しさん
24/01/20 16:00:45.48 tKcafxZR.net
RustのWebアプリケーションは未履修だけどぜひやりたいなあ
985:デフォルトの名無しさん
24/01/20 18:46:27.21 PTOG17pe.net
>>954
Webで使うにはTokioなどの重量級ランタイムが必要
ただ利用するだけなら難しくはないけどエコシステム含めそこまで安定しているものじゃないのでランタイム含め自力で修正できる力が必須
986:デフォルトの名無しさん
24/01/20 18:55:33.87 I+Fu8n3P.net
>>964
90年代後半にコボラーがJavaでWebアプリを作れるようになるための学習コストに比べればRustの学習コストは断然低い
987:デフォルトの名無しさん
24/01/20 19:12:06.87 6DBgVQg4.net
>>969
その時期にいた純粋コボラーって定年間際のジジイじゃん。そりゃ学習コスト高いわ。
988:デフォルトの名無しさん
24/01/20 19:21:51.44 w9m16ZcP.net
httpclientもそれぞれのイベントループに対応したものをつかわないとダメだから割と面倒なんだよね
使い方もフレームワークによってかなりクセが違っていて面倒だし
ぶっちゃけWebはGoやpythonでいいんじゃねーかって思う
989:デフォルトの名無しさん
24/01/20 19:26:03.92 tKcafxZR.net
Goでいいは分かる
990:デフォルトの名無しさん
24/01/20 19:56:32.80 k6CjZuQW.net
Go のランタイムサポートは分厚めだがどうせ要るもの(やること)と考えればそんなに速度的に不利なわけではないよな。
991:デフォルトの名無しさん
24/01/20 20:11:15.24 u/fg5YR1.net
速度的にはGoで十分なんだけど型とか貧弱すぎるんだよな…
sumタイプとパターンマッチくらいは欲しい
992:デフォルトの名無しさん
24/01/20 20:17:19.49 tNrs3Odf.net
>>968
tokioは他言語と比べて大きくない
そして安定している
>>971
各言語に複数のイベントループライブラリがあってその通りだが
Rustはデファクトスタンダードがあるためそこで困ることはない
993:デフォルトの名無しさん
24/01/20 21:17:45.54 w9m16ZcP.net
>>975
いやデファクトがあるのは良いけど
例えばコマンド実行1つとっても
tokio::process::commandとか使わなきゃいけなくてなんだかなあと
非同期版じゃないのと区別しなきゃいけなくて嫌気が刺す
まあpythonもasync使えば同じことなのだけど
994:デフォルトの名無しさん
24/01/20 21:24:03.71 w9m16ZcP.net
まあ俺はRust信者だから使うのだけど普通の人はなかなか辛いんじゃないかなーと
その点Goは何も考えなくて良いしpythonもasync使わなけりゃ同期的に書けるし
995:デフォルトの名無しさん
24/01/20 21:48:04.29 USm4U3n4.net
>>976
PythonもasyncはそうだしJavaScript(Node)も同期execと非同期exec分かれているし
動作が異なるのだから別になるのは当たり前
もちろんRustでも同様で
そもそも関数の返り値が異なる
だから関数が分かれているのは正しい
したがって一番下位のライブラリが別であることに何ら問題はない
一方で中位ライブラリ作成側の視点に立つと
同期か非同期かだけの違いでasync/awitを除いて全く同じ構造の関数を作ることになる
そのため『?async』キーワードによるジェネリック化がRustでは進められている
期待しているのはこの話でよいのか?
996:デフォルトの名無しさん
24/01/20 23:05:04.71 w9m16ZcP.net
>>978
いや見た目は似ててもpythonとはだいぶ違うよ
まずpythonでのasync defは単なるコルーチンオブジェクトなので非同期とか関係ない
これにより恐ろしい柔軟性を持ってる
さらにWebにおいてはASGIという非同期Webフレームワークが満たすべき仕様をまず決めた
その仕様を満たしさえすればどのような実装でも非同期の機能を満たせるような仕様となっている
そこにはもうイベントループなどの概念は消え去っている
さらに同期版と同居できる仕様となっている
なのでdjangoなどは同期版と非同期版の切り替えが可能となっている
このように明らかにユーザーフレンドリーな姿勢を貫いている
997:デフォルトの名無しさん
24/01/20 23:17:14.31 wyzQTwgG.net
>>979
Rustのasyncもコルーチンだぞ
まずは理解してから出直して来い
998:デフォルトの名無しさん
24/01/20 23:26:48.19 HZE0SdTu.net
>>980
コルーチンではないでしょ
999:デフォルトの名無しさん
24/01/20 23:49:39.00 nUH4CzWh.net
Rustのasyncはstackless croutineでstate machineとなっている
個別stackのresouceもswitchingも不要なため軽くて有利
1000:デフォルトの名無しさん
24/01/20 23:50:29.43 u/fg5YR1.net
Rustのasyncは(スタックレス)コルーチンである
Rustのasyncは(スタックフル)コルーチンではない
どっちも正しいとは思うけど
1001:デフォルトの名無しさん
24/01/21 10:13:23.50 VnWGTEfZ.net
>>977
Rustが活きるのってやっぱり軍事系じゃないかな
兵器の制御とかGCなんてもってのほかだし速度も必要
メモリリークも起こせない
1002:デフォルトの名無しさん
24/01/21 11:18:24.63 JCOE1HZY.net
DAD御用達?
1003:デフォルトの名無しさん
24/01/21 11:24:54.33 8LqvrPkW.net
物理攻撃にソフトウェアを活用するってある意味「お花畑」だよな
1004:デフォルトの名無しさん
24/01/21 11:29:12.59 7K9itJgV.net
パパ活か?DoDだろ
DoD御用達はAdaだぞ
1005:デフォルトの名無しさん
24/01/21 11:46:34.67 VnWGTEfZ.net
やっぱりAdaしかないか
プリプロセッサ使うのもNGだからマクロがダメなんかな
1006:デフォルトの名無しさん
24/01/21 11:59:39.08 dFB+Bg2+.net
とはいえF-35はC++だったんだし、そのうちRust採用されてもおかしくはないけどな
1007:デフォルトの名無しさん
24/01/21 12:09:12.81 4CYZ0hXB.net
The Book読んでコード打ち込んだりしたが理解できた気がしない
次はどうすればいいの
1008:デフォルトの名無しさん
24/01/21 13:24:30.49 8LqvrPkW.net
仕様の次は実装とか
いま極端なところにいる奴は次はもう一方の極端に行けばいいし
ちょうどいい位置にいる奴は一生そこに居続ければいいのでは?
1009:デフォルトの名無しさん
24/01/21 14:20:11.30 sCtD39A+.net
>>990
理解できてないと感じるのがunsafeやasyncやマクロ辺りならそこは一旦放置して小さいCLIツールをいくつか書いて実践経験を一度積むほうがいいかもしれない
逆にownership/reference/lifetime/generic/traitといったコアなところが理解できてないと感じるならオライリー本など別の入門書をすすめる
1010:デフォルトの名無しさん
24/01/21 15:14:08.20 eSjvKxMy.net
>>989
Rustは使われない
ISOプロセスは産業界の評価が高い
1011:デフォルトの名無しさん
24/01/21 15:15:15.91 eSjvKxMy.net
F-15は50年以上空を飛んでいることを思い出してほしい
Rustは50年後存在しない
1012:デフォルトの名無しさん
24/01/21 15:44:39.63 cX88PWDV.net
>>993
Rustのスポンサー欄を見ればわかるけど将来Rustが使われるのは確定されたことだぞ
アンチさんどんまい
1013:デフォルトの名無しさん
24/01/21 15:46:08.09 4rk7TZPC.net
統計学的に会社や国家、生物種の存続見込みを解析した例を見たことが有るな。
これまでの歴史が長いものはこれからも長く続く可能性が高い。
1014:デフォルトの名無しさん
24/01/21 15:50:57.32 eziZnnQK.net
>>996
Javaみたいにホストがアホなことするとすぐ廃れるけどな
1015:デフォルトの名無しさん
24/01/21 16:55:47.23 4CYZ0hXB.net
>>992
ありがと
1016:デフォルトの名無しさん
24/01/21 19:43:22.00 /dcZ0aWP.net
次スレ
Rust part22
スレリンク(tech板)
1017:デフォルトの名無しさん
24/01/21 20:22:28.74 mpR7a4j6.net
>>994
C++みたいに、色々な実装がでてくれは、50年後にも生きてるんじゃない?
1018:1001
Over 1000 Thread Thread.net
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 158日 21時間 57分 50秒
1019:過去ログ ★
[過去ログ]
■ このスレッドは過去ログ倉庫に格納されています
最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
288日前に更新/259 KB
担当:undef