探検
C++ vs Rust
レス数が1000を超えています。これ以上書き込みはできません。
2021/04/24(土) 08:04:49.48ID:nPKzA798
競え
983デフォルトの名無しさん
2021/12/14(火) 10:15:19.20ID:YU8H/oh/ 結局Rustが一番いいよな
非同期をawaitという限られた同期パターンだけでなくfutureを直接扱うことも可能だし
Goのようにコルーチンをすぐ動かせるしそれに対して同様にchannel通信もいけるしfutureとして扱うことも可能
非同期をawaitという限られた同期パターンだけでなくfutureを直接扱うことも可能だし
Goのようにコルーチンをすぐ動かせるしそれに対して同様にchannel通信もいけるしfutureとして扱うことも可能
984デフォルトの名無しさん
2021/12/14(火) 10:55:30.64ID:9qJ+oS+1 アホか、Rustに厳密なcoroutineなんてデフォルトで無いやろ、Boost移植のcontext-rs/coroutine-rsとかあるけども…
実験的にRFC 2033: experimental coroutinesとかやってるけど、N:Mスレッドスケジューラーが標準搭載される未来はない。
実験的にRFC 2033: experimental coroutinesとかやってるけど、N:Mスレッドスケジューラーが標準搭載される未来はない。
985デフォルトの名無しさん
2021/12/14(火) 11:24:57.22ID:YU8H/oh/ >>984
Rustでは一昨年からasync blockが既にstackless symmetric coroutineとして動いています
zero costでlazyなのでasync blockを作るとそれだけだとfutureが出来るのみ
それをm:n含め好きなスケジューラがいくらでもあるのでそれに対してspawnするだけで起動します
そのasync block内では全てawaitしまくればgoroutineと同じ状況になります
もちろんチャネルも使えます
Rustでは一昨年からasync blockが既にstackless symmetric coroutineとして動いています
zero costでlazyなのでasync blockを作るとそれだけだとfutureが出来るのみ
それをm:n含め好きなスケジューラがいくらでもあるのでそれに対してspawnするだけで起動します
そのasync block内では全てawaitしまくればgoroutineと同じ状況になります
もちろんチャネルも使えます
986デフォルトの名無しさん
2021/12/14(火) 12:31:40.21ID:cpUh/hIt Rustの並行処理には未来を感じるけど、
tokioとasync-stdはどっちがデファクトスタンダードです?
tokioとasync-stdはどっちがデファクトスタンダードです?
987デフォルトの名無しさん
2021/12/14(火) 12:37:47.85ID:XjtTquHZ 不毛な議論にまたなるのでアホは相手したくないが、「厳密な」と書いていることが全くわかってない。
所詮spawnするということはasync/awaitがepollベースであり、更には「全てawaitしまくれば」なんてGoと同じ状況じゃないでしょw
標準搭載と書いてるのに「好きなスケジューラがいくらでもある」とほざく
ゼロコスト、ゼロコスト言うやつがいる限りウザがられるし、英文で書けば相手を丸め込む事ができると思い込んでると
ホントに爪弾きにされるぞ、Rust推しは分かるけどもう少し顔真っ赤にしてくる態度改めようぜ?
C++でもco_await、co_yieldはゼロコストでスタック消費しないし、コンパイラ型で非同期にコスト掛かる言語って何?
所詮spawnするということはasync/awaitがepollベースであり、更には「全てawaitしまくれば」なんてGoと同じ状況じゃないでしょw
標準搭載と書いてるのに「好きなスケジューラがいくらでもある」とほざく
ゼロコスト、ゼロコスト言うやつがいる限りウザがられるし、英文で書けば相手を丸め込む事ができると思い込んでると
ホントに爪弾きにされるぞ、Rust推しは分かるけどもう少し顔真っ赤にしてくる態度改めようぜ?
C++でもco_await、co_yieldはゼロコストでスタック消費しないし、コンパイラ型で非同期にコスト掛かる言語って何?
988デフォルトの名無しさん
2021/12/14(火) 14:43:42.13ID:ecGTY8hf https://i.imgur.com/dB5gmZU.png
2022年版が必要です
2022年版が必要です
989デフォルトの名無しさん
2021/12/14(火) 14:53:55.31ID:nVZu9KeB >>987
貴方のほうが色々とおかしい。
>所詮spawnするということはasync/awaitがepollベースであり、Goと同じ状況じゃないでしょw
まずepollを貴方が理解できていない。epollはLinuxでのpoll/select系システムコールのAPI。
厳密にするのも的外れなので、仮にここではselect/poll等の意味合いで受け取っておく。
Goのgoroutineも当然ながらこのselect/poll等を用いて実現しているので全く同じ状況。
当然select/poll等を用いなければgoroutineのような軽量スレッド(グリーンスレッド)は実現できない。
>所詮spawnするということはasync/awaitがepollベースであり、
引用再掲するが、貴方は更なる誤解もしている。
まず、awaitはfutureを解決する単なる一つの手段にすぎず、貴方が言及しているspawnする対象はfurureである。
そしてGoでの「go func」がRustでの「spawn(future)」に相当。
これらが為されないとどちらもスケジューラに登録されず両者は同じ状況であると言える。
>更には「全てawaitしまくれば」なんてGoと同じ状況じゃないでしょ
Goroutineでは明記しなくても暗黙的にawaitを付けたのと同じ同期的な記述で非同期を記述できる。
したがって、Rustにおいては「全てawaitしまくれば」Goと同じ状況といっても過言ではないと言えよう。
いずれにしても「go func」と「spawn(future)」の場合と同じで記述面での些細な相違だけにすぎない。
>標準搭載と書いてるのに「好きなスケジューラがいくらでもある」とほざく
Rustの標準には不可欠なものしか無いから標準搭載されていないのは当たり前。
よく例に出されるが、C言語でstdlibにあるrand()のような乱数ですらRustの標準ライブラリにはない。
貴方の無茶な理論だとRustは乱数もサポートしていない言語、となる。
OSや組み込みにも用いられる状況で、何か単一のスケジューラが標準搭載であればよい、わけがない。
むしろ様々なスケジューラを選ぶことができるRustの状況こそ、明らかに有利である。
貴方のほうが色々とおかしい。
>所詮spawnするということはasync/awaitがepollベースであり、Goと同じ状況じゃないでしょw
まずepollを貴方が理解できていない。epollはLinuxでのpoll/select系システムコールのAPI。
厳密にするのも的外れなので、仮にここではselect/poll等の意味合いで受け取っておく。
Goのgoroutineも当然ながらこのselect/poll等を用いて実現しているので全く同じ状況。
当然select/poll等を用いなければgoroutineのような軽量スレッド(グリーンスレッド)は実現できない。
>所詮spawnするということはasync/awaitがepollベースであり、
引用再掲するが、貴方は更なる誤解もしている。
まず、awaitはfutureを解決する単なる一つの手段にすぎず、貴方が言及しているspawnする対象はfurureである。
そしてGoでの「go func」がRustでの「spawn(future)」に相当。
これらが為されないとどちらもスケジューラに登録されず両者は同じ状況であると言える。
>更には「全てawaitしまくれば」なんてGoと同じ状況じゃないでしょ
Goroutineでは明記しなくても暗黙的にawaitを付けたのと同じ同期的な記述で非同期を記述できる。
したがって、Rustにおいては「全てawaitしまくれば」Goと同じ状況といっても過言ではないと言えよう。
いずれにしても「go func」と「spawn(future)」の場合と同じで記述面での些細な相違だけにすぎない。
>標準搭載と書いてるのに「好きなスケジューラがいくらでもある」とほざく
Rustの標準には不可欠なものしか無いから標準搭載されていないのは当たり前。
よく例に出されるが、C言語でstdlibにあるrand()のような乱数ですらRustの標準ライブラリにはない。
貴方の無茶な理論だとRustは乱数もサポートしていない言語、となる。
OSや組み込みにも用いられる状況で、何か単一のスケジューラが標準搭載であればよい、わけがない。
むしろ様々なスケジューラを選ぶことができるRustの状況こそ、明らかに有利である。
990デフォルトの名無しさん
2021/12/14(火) 15:23:08.46ID:SmqbIrWZ 顔真っ赤マン。。。
991デフォルトの名無しさん
2021/12/14(火) 16:25:41.72ID:iFoIKYew >>989
顔真っ赤で草
顔真っ赤で草
992デフォルトの名無しさん
2021/12/14(火) 17:27:33.19ID:YU8H/oh/993デフォルトの名無しさん
2021/12/14(火) 18:07:51.75ID:K0HBzsrc 顔真っ赤オジサン、スケジューラの核心www
994デフォルトの名無しさん
2021/12/14(火) 20:36:31.90ID:oL+i1N1M ここまでの議論でわかったことは、RustよりGoのほうが上。
995デフォルトの名無しさん
2021/12/15(水) 07:13:59.09ID:CevG0U/x Goでできることが全てRustでもできるようになってしまったもんな
Goではできないこと辛いことが多すぎてGo2でRustの後追いしようとしているがGo2は期待外れで盛り下がっている
Goではできないこと辛いことが多すぎてGo2でRustの後追いしようとしているがGo2は期待外れで盛り下がっている
996デフォルトの名無しさん
2021/12/15(水) 08:58:39.57ID:3YmRd/Kz それがディスパッチャでありスケジューラの核心
997デフォルトの名無しさん
2021/12/15(水) 11:21:17.73ID:TZwcTz32 Goは色んなレベルで簡素で手段に制限があるけど
そこをパズルのように組み合わせてある程度のことは出来る楽しさがいいのよ
ただしそれが飽きられてきていたり楽しいと思う人たちより外に広まらなかったり
自然じゃない組み合わせで実装や冗長な記述などせざるをえなかったり
だからGoはこのまま狭い適用範囲だけで使われる形になりそう
そこをパズルのように組み合わせてある程度のことは出来る楽しさがいいのよ
ただしそれが飽きられてきていたり楽しいと思う人たちより外に広まらなかったり
自然じゃない組み合わせで実装や冗長な記述などせざるをえなかったり
だからGoはこのまま狭い適用範囲だけで使われる形になりそう
998デフォルトの名無しさん
2021/12/15(水) 11:41:54.42ID:z10T13Tn このスレなくなったら名残惜しいから次スレ建てろ
完走しても建ってなかったらワイが建てるで
完走しても建ってなかったらワイが建てるで
999デフォルトの名無しさん
2021/12/15(水) 12:34:06.40ID:t4BO72er1000デフォルトの名無しさん
2021/12/15(水) 12:34:55.45ID:z10T13Tn 1000ならC++の勝ち!!!!!
10011001
Over 1000Thread このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 235日 4時間 30分 6秒
新しいスレッドを立ててください。
life time: 235日 4時間 30分 6秒
レス数が1000を超えています。これ以上書き込みはできません。
ニュース
- コメ「余っている」年明けに下落も? 大量の在庫が倉庫を圧迫、赤字の恐れ…業者「値下げするしか…」 [Hitzeschleier★]
- コメ「余っている」年明けに下落も? 大量の在庫が倉庫を圧迫、赤字の恐れ…業者「値下げするしか…」 ★2 [Hitzeschleier★]
- 「レーダー照射」なぜ中国は素直に謝罪しないのか 非を認めず反論逆ギレ、ごめんなさいと言えない国情 [七波羅探題★]
- 40代教員、1億8600万円分の暗号資産だまし取られる 「警察手帳のような物」見せられ−滋賀県草津市 [蚤の市★]
- 【山形】豚舎が全焼 ブタ400頭が焼け死ぬ [シャチ★]
- 松村沙友理、スタバは好きだけど「やっぱコーヒーに700円800円が…」「家でお湯わかしてやったらタダやん」 [muffin★]
- 【実況】博衣こよりのえちえちダンガンロンパ2🧪★2
- 【速報】トランプ「高市、お前邪魔」 [931948549]
- 【実況】博衣こよりのえちえちダンガンロンパ2🧪★1
- 【高市朗報】松屋、つけ麺の松富士を91億円で買収。松軒、松太郎と合わせ松屋のラーメンは3ブランド体制に [517459952]
- 【悲報】コンビニオーナー「デフレの方がよかった。20年前は国立大卒の20代の若者が時給720円のバイトとしていくらでも使えた [257926174]
- バブル時代の日本人「え?数十年後の日本はお米は高くて買えない、公共インフラはボロボロ、中国に経済や技術力で完敗してるってマジ?」 [153736977]
