次世代言語29 TypeScript Swift Go Kotlin Rust Nim

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2022/09/17(土) 19:05:49.83ID:6v3irpfN
スレタイ以外の言語もok

前スレ
次世代言語28 TypeScript Swift Go Kotlin Rust Nim
https://mevius.5ch.net/test/read.cgi/tech/1661739736/
2022/09/25(日) 14:58:40.12ID:P75X35KX
gccのほうが変則的ながらサポートするアーキテクチャが多いのは歴史が長いからだろうけど、gcc rustとか
linusが言ってるように存在する(だがいまいち)んだから、攻撃性だけ高いバカは相手にしちゃいかんのな?
公式じゃないとしても様々なコンパイラに対応はrustですら行っていて自分に返ってきた諸刃の剣になっとるわ
何が言いたいのか1つも分らんし、結局はマイナーだの、みんながLLVMだの。マジ気持ち悪い
2022/09/25(日) 15:24:54.20ID:czhuHWYf
nimはコンパイラを作らない方針よ
Cへのコンバータを代わりに用意していましゅ
446デフォルトの名無しさん
垢版 |
2022/09/25(日) 17:11:04.17ID:Rxhh3DJ9
>>439
日本の技術は世界一。
2022/09/25(日) 17:28:42.91ID:/uxFL98k
次スレタイから
Nim out
Zig in
2022/09/25(日) 18:03:28.36ID:w52o4V7F
Carbonも入れよう
Go、Rust、Swift、Zig、Carbonはまつもとゆきひろ公認の次世代言語だからね
https://logmi.jp/tech/articles/327259
449デフォルトの名無しさん
垢版 |
2022/09/25(日) 18:11:13.74ID:Rxhh3DJ9
D言語も入れるべきでは?
2022/09/25(日) 18:43:21.75ID:+OL/eqQP
当時Zigに注目してなかったが、過去スレのこれ↓今度は「競プロ的視点」でZigのところ再現してくれ

ちなみに某一名が >それは専用プログラムでない限りプログラミングでやってはいけない行為 >"caller hash"
と批判しているが、"Rust@github rust/optimized-customhashmap"でも行われている。

https://github.com/benhoyt/countwords

https://mevius.5ch.net/test/read.cgi/tech/1655771266/
976デフォルトの名無しさん2022/08/05(金) 07:34:10.27ID:BZGh0CoX
Time in seconds for each data size: kjvbible.txt
x10 x100 x200 x400 Mem Comment

0.018 0.052 0.089 0.174 ***MB baseline/cat
0.036 0.089 0.147 0.260 ***MB baseline/rg foobar (ripgrep, no match)
0.032 0.091 0.159 0.290 ***MB baseline/ugrep foobar (no match)
0.058 0.457 0.889 1.789 1.1MB baseline/grep foobar (no match)
0.219 2.108 4.127 8.263 0.9MB baseline/wc -w (word count, total only)

0.154 1.271 2.551 5.079 2.0MB C (caller hash,stdin=binary-mode)
0.177 1.412 2.733 5.446 3.8MB Go (caller hash)
0.161 1.458 2.903 5.671 1.4MB C++ (caller hash,cin=binary-mode)
0.175 1.513 2.953 5.863 4.6MB Zig @github fixed
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
0.176 1.572 3.124 6.045 2.6MB Rust@github rust/optimized-customhashmap <------実は"caller hash"
0.180 1.597 3.219 6.267 3.1MB Rust@5ch res >>602
Ryzen9 5900X windows11
2022/09/25(日) 18:57:56.78ID:qD8+FrW3
そんなことより条件揃えないベンチは何も価値がない
どうでもいい話を今ごろ蒸し返すのは病気
2022/09/25(日) 18:59:20.58ID:lhW/fB5K
Nim下げしたいがためだけにgccよりllvmとか言ってたのか
くだらな
2022/09/25(日) 19:06:34.33ID:fr7iW8/Q
Cコードを生成するNim
LLVMコードを生成するZig
どちらがまともか一目瞭然
2022/09/25(日) 19:15:44.04ID:PDKGWlWe
唯一確かなのは言語のスレで実装でマウント取ろうとする奴がまともでないことだな
2022/09/25(日) 19:22:43.96ID:toxRGZVn
ある言語で誰かにより書かれた特定のアプリやシステムやプログラムコードをもってその言語自体を叩く人がいつもいるね
区別がつかないのかも
2022/09/25(日) 19:27:32.77ID:o/MazDuA
そもそも言語を叩くって意味が分からんわ
いや、意味は分かるんだけど動機が分からんわ

プログラミング言語に好きも嫌いもなくて必要なもんを使うだけ←わかる
嫌いな言語なんてない←わかる
嫌いな言語がある←わかる
嫌いな(?)言語を叩く←???
457デフォルトの名無しさん
垢版 |
2022/09/25(日) 19:33:28.70ID:Rxhh3DJ9
>>450
次世代言語は遅いくせにメモリー食いすぎだな。
458デフォルトの名無しさん
垢版 |
2022/09/25(日) 19:34:35.56ID:Rxhh3DJ9
>>456
5chでRustやRubyが叩かれるのは理由があるからな。
2022/09/25(日) 19:41:23.81ID:6wI0gbs/
RubyはガイジのせいだけどRustにもガイジがいるの?
2022/09/25(日) 19:45:35.90ID:OVW1TBF9
>>459
熱心なアンチをここでよく見かけるw
2022/09/25(日) 20:30:28.24ID:jQaUrv4h
実装で特別なことはしてないが「競プロ的視点」という事で:

Language x10 x100 x200 x400 Memory Comment
--------------------------------------------------------------
Zig 0.118 1.073 2.113 4.203 3.2MB (std.HashMap + "caller hash" by Context(std.hash.Fnv1a_64.hash))
Zig 0.162 1.493 2.970 5.935 4.6MB (std.StringHashMap)

zig version 0.10.0-dev.4166+cae76d829
CPU Zen3@boost max~4.75GHz

Faster than C になってる(Cはまだまだ最適化の余地があると思うが)
2022/09/25(日) 20:40:28.94ID:tSRJjxfh
バカだな
言語間で異なるアルゴリズムを使っていたら
それは言語の比較ではなくアルゴリズムの比較だ
463デフォルトの名無しさん
垢版 |
2022/09/25(日) 20:45:11.70ID:Rxhh3DJ9
実際に速くても、RustよりZigのほうが速い証明にならんのか?
2022/09/25(日) 20:51:08.64ID:WuvdTVAA
ZigもRustもコードを合わせればほぼ同じLLVMコードを吐いてほぼ同じ結果になるやろな
無論Clang使用したCも
2022/09/25(日) 21:20:01.75ID:7o/BwXuI
叩かれる側に原因があるっていうのはアフォーダンス
物を売りつければ、買う側に原因があるという
ちょうど猫が入りそうな箱に猫を入れたら、箱に原因があるという
2022/09/25(日) 21:45:37.43ID:S7teK5ry
おーいつもやつ帰ってきたか
寂しかったぞ
三連休どこに消えてたんだ
家族サービスでもしてたか?
書き込み減って悲しかったぞ
467デフォルトの名無しさん
垢版 |
2022/09/25(日) 23:10:00.88ID:LGm5VRVM
C言語へのトランスレート自体は悪くない。
でもマイナー言語でリソース足りないのに色んな言語へのトランスレートをやろうとするのは無理すぎ。
2022/09/25(日) 23:31:48.34ID:PDKGWlWe
>>467
> 色んな言語へのトランスレートをやろうとするのは無理すぎ。
そんな言語あるの?
2022/09/26(月) 12:30:23.28ID:YfpqeBHF
JVM 系言語が Kotlin Native, Scale.js, GraalVM あたりで JVM 以外に色気出すのは筋悪いと思うね。

そこに魅力を感じる層は結局自分が今習得しているツールに縛られた技術選定しかできない人々という意味でも、発展性がない。
2022/09/26(月) 14:29:10.13ID:8+SLfSDi
>>469
視野が狭い末端プログラマーらしい意見だね。

君は結局自分が今置かれた立場に縛られた物事の見方しかできない人という意味でも、発展性がない。
2022/09/26(月) 14:40:41.23ID:tGukFybk
>>453
nlvmというトランスレーターではないllvm IRを直接吐き出す実装があるんだわ。もちろん、公式じゃないし
こんな事する意味があまりないから全然流行ってないけど、上のほうで暴れてたLLVM=Rust信者だって
もともとはRustだってOCamlで書かれた最初のコンパイラを辞めて、LLVMのセルフホストになった。
そこにコンパイラ基盤がLLVMだから良いとか・優秀だという考えはない、単にコンパイルを速くしたかったか
開発リソースを集中させたかっただけ。現にgccrsはllvmだと宜しくない場合があるから作られてるわけで

言語へのトランスレートが無理なんじゃなく、作者は開発コスト問題から数多ある無数のCコンパイラへ対応は
辞めたがってるけど、それだってマイナーなTiny C/tccがC標準から少し逸脱してるから辞めたいだけ
472デフォルトの名無しさん
垢版 |
2022/09/26(月) 14:41:03.61ID:heiSJ5NK
暇なんか
2022/09/26(月) 14:46:16.26ID:tGukFybk
暇なんや、ごめん。。。
2022/09/26(月) 14:51:59.22ID:6oNZz9Ue
>>469
根拠を示していないから、ただの誹謗中傷にしかなっていない。
煽るにしても、もうちょっとそれらしい主張にしたら?
例えば「JVM系の言語はだらしなくヒープを使うからネイティブにしても速くならない。そんなのをやるんだったら、安全性と速さを両立したRustを勉強したほうがいい」とか。
475デフォルトの名無しさん
垢版 |
2022/09/26(月) 16:55:54.26ID:heiSJ5NK
ruby は ruby で実装されています
遅くなる罠
2022/09/26(月) 17:38:57.35ID:a/RKbAyr
>>471
LLVMなんてどこでも使っているのに
LLVMというだけでRust信者と思い込むのは浅はか
なんでもかんでもRustにもって来たがるのはアンチの悪い癖
2022/09/26(月) 17:45:13.50ID:6tM7XGma
>>469
JVM言語の唯一のメリットであるポータブルな点は当時と比べて重要度を失っているんじゃないかな
もちろんポータブル自体は有利だけどJVMよりもっと様々な必要や要素を兼ね備えたWASMの出現が大きかったね
後発だから色んな改善がされているのは当たり前だけどWASM>JVMであることは否定しようがないもんね
2022/09/26(月) 20:34:04.50ID:aq2MKDiL
https://github.com/benhoyt/countwords

Language x10 x100 x200 x400 Memory Comment
--------------------------------------------------------------
Zig 0.118 1.073 2.113 4.203 3.2MB (std.HashMap + "caller hash" by Context(std.hash.Fnv1a_64.hash))
C(gcc) 0.136 1.146 2.271 4.531 2.0MB (optimized.c, binIO,jemalloc,O4,LTO) NEW
C(clang/LLVM) 0.137 1.147 2.280 4.544 2.0MB (optimized.c, binIO,jemalloc,O3,LTO) NEW
Go 0.177 1.412 2.733 5.446 3.8MB (caller hash)<--from過去スレ
Rust(LLVM) 0.154 1.425 2.838 5.674 2.6MB (optimized-customhashmap,O3,LTO,caller-hash) NEW

以下、caller-hashではない
Zig 0.162 1.493 2.970 5.935 4.6MB (std.StringHashMap)
Rust(LLVM) 0.214 1.725 3.396 6.715 3.5MB (optimized,fxhash,O3,LTO) NEW

zig version 0.10.0-dev.4166+cae76d829
gcc 12.2.0/clang 15.0.0
rustc 1.64.0 (a55dd71d5 2022-09-19)
CPU Zen3@boost max~4.75GHz

Go Ryzen9 5900X windows11 <-- Boost Clock. Up to 4.8GHz.?

Rust(optimized-customhashmap)はC(optimized.c)と「コードを合わせ」てあるはずだが、コンパイルオプション程度の「簡単」な工夫を試した限りではgcc/clangと「ほぼ同じ結果にはならなかった」

「コードを合わせたRust」がCと比べて「2~3割程度遅い」のは「そういう場合もあるよね」で驚きも失望もない

意外なのは過去スレGoがRustと同水準だ(起動時間0.03s程度以外むしろGoの方が速い)という事。(こちらで再現したわけではない)
2022/09/26(月) 21:18:14.74ID:kqzwQQxQ
またキチガイが粘着にデマを蒸し返してるのか
RustがC/C++と同等の速さで動くことは世界中で様々なケースで確認済み
今は次の段階へ進んでいて新たなシステム構築からRustへ置き換わって行ってる
2022/09/26(月) 21:28:58.87ID:C6vutbgO
Rustはコードがスパゲッティになっちゃうから
その分遅くなる可能性あるよね
スパゲッティにならなきゃCと同等だよ
481デフォルトの名無しさん
垢版 |
2022/09/26(月) 21:31:40.65ID:O0BeXmlV
>>479
さすがにそりゃ無理だろ。
2022/09/26(月) 21:46:52.90ID:9MQ9piMO
>>480
Rustで書くと素直な整理されたデータ構造に改善する方へ寄せられていくから
スパゲティにはならずむしろスパゲティ解消のメンテしやすい良いコードになってしまいますね
2022/09/26(月) 21:52:22.11ID:+dm3CjP+
保守性の悪いスパゲッティなコードを書く人がRustを嫌っているのはそこだな
Rustだといつもの汚い思い通りのコードが書けないからイライラするのだろう
2022/09/26(月) 22:14:45.96ID:/nP0aUDh
Rustスレで自己満クソコードをいっぱい貼った子がおってなw
あれたぶん自分ではきれいな非スパゲッティコードだと思ってるんやろな
2022/09/26(月) 22:20:48.84ID:beq6P1IL
>>484
最近Rustスレ見ているけどそんなの見たことないな
別の言語の話なのかな
2022/09/26(月) 22:36:11.87ID:jR+qoQ1m
汚コーダーこと複オジ必死ww
2022/09/26(月) 22:39:34.93ID:8PEh+vqG
Rustはある種のBDUFを強制するから良い場合もあれば良くない場合もある
2022/09/26(月) 22:52:31.71ID:pezTruwP
具体的にその汚いコードというのを見てみたい
もし本当にあるならば
2022/09/26(月) 23:05:18.27ID:/nP0aUDh
自分ではキレイと思ってるから自分では自信があったのかなw
スレ住民にクソコード貼るなって言われても意固地になってたよw
その流れを再放送するなら無意味だよね
聞く耳持たないだけだから
2022/09/26(月) 23:10:51.04ID:s+ZBVtyn
仕様をよっぽど気に入らない限りコードなんて見なければいい
仕様が憎ければコードまで汚く見える
2022/09/26(月) 23:19:28.91ID:pT4nta3W
スパゲティコード見せて
Rustで見かけたことないので興味ある
2022/09/26(月) 23:27:53.64ID:UCDuW+LB
>>489
「ママー、きょうこんなコードかいたんだよ、みてみてー」ってノリだったから汚いかどうかは眼中になかったんだろ

気持ち悪いおっさんが幼稚園児メンタルで汚コードを一日中貼り続けるからマジキモかったけどな
2022/09/26(月) 23:30:20.22ID:27oIc9Ns
>>491
>>1から過去スレをたどっていくことができない情弱
・酷評されたコードを汚くないと再反駁するためのネタ振り

どっち?
2022/09/26(月) 23:32:17.55ID:/nP0aUDh
再放送になるだけだから相手しちゃダメよ
2022/09/26(月) 23:33:27.62ID:TfyFKTsU
スパゲッティな汚いコードが貼られているスレどこよ?
2022/09/26(月) 23:38:47.29ID:n/I9g/yq
昔はgotoだらけの制御が絡み合って個々に分解しにくいコードを指してスパゲティと呼んだものだが
今時そんなgotoだらけのコードはないだろうから、どんなコードを指してスパゲティと呼んだのか興味はある。
2022/09/26(月) 23:40:55.28ID:Lm6MVDpz
コードを示せない上にスレも示せないって、スパコードが実在しないんじゃね
2022/09/26(月) 23:42:48.94ID:s+ZBVtyn
きれい
a + (b + c) = (a + b) + c

汚い
(= (+ a (+ b c)) (+ (+ a b) c))
2022/09/26(月) 23:48:39.78ID:TKJcQCDW
Rustでスパゲッテイなコードは起きないだろうから
>>484がRustを叩きたくて嘘をついていて引くに引けなくなっただけだと思うよ
2022/09/26(月) 23:54:32.25ID:Jsp+UQ/m
最初から「Rustスレ」でって書いてあるじゃん
ディープコピーすら知らなかった複オジの黒歴史を見てこいよw
2022/09/26(月) 23:56:01.56ID:OQjD8tr1
>>500
本人だから相手しちゃダメ
また汚コードペタペタされるぞ
2022/09/27(火) 00:01:35.99ID:GvJUGqKn
Rustスレもいつも眺めているがスパゲティコードらしきものを見たことないな
そもそもRustでスパゲッティコードというものが想像つかん
2022/09/27(火) 00:16:44.35ID:8a7P63B1
急に必死じゃん
ウケる
2022/09/27(火) 00:29:16.23ID:N/hVnqtI
結局Rustアンチの人による妄想なの?
次世代言語でのスパゲッティ見てみたかった
2022/09/27(火) 06:55:28.90ID:IOhA+x8R
言語のアンチをしている時点で異常者だから
2022/09/27(火) 07:43:25.27ID:IZdkb4Kl
>>482
「改善する方向に誘導」は嘘。
マズそうなデータ構造で助言してくれるわけじゃない。
実際は「煮詰まってきたときにコンパイルが拒否する」が正解。Rustはにっちもさっちもいかなくなってから「これはダメ」と放り投げる。
2022/09/27(火) 09:16:32.53ID:rf9DOsrN
テスト駆動によれば、テストが通らない状態から始めるように誘導しなければ
改善へ誘導したと言えなくなる
2022/09/27(火) 09:41:06.42ID:cEY2BOsF
Rustが叩かれてるというよりは単に複オジが叩かれてるだけなんだがw
このへんの区別がつかない人と話になる?w
2022/09/27(火) 11:19:43.94ID:UjKs3SUd
このスレはなぜJuliaの話題が無いのか
単純な計算やループだとRustのようにCと同等のネイティブコードで実行でき簡単に並列化・分散化してスケールする。
行列を標準で扱え、コンパイルも出来てスクリプト言語のように手軽にcliで実行できる。面倒な型は普通に型推論だが
逆行する推論を備え、それによってコンパイル言語でありえない動的さと、Lispのような真のマクロを備える
それともどこかにある最適な実装を、シコシコとオレ様実装してしまう泥臭く真の漢のシステムプログラマーばかりなのか
2022/09/27(火) 11:26:01.22ID:5Lv2ihqk
>>509
汎用言語じゃないから
2022/09/27(火) 11:38:54.13ID:XJRFtCjW
>>509
その単純な計算やループはたまにしか使わない
JuliaはGC言語なのにヒープメモリをできる限り少なくするプログラミングをプログラマーがしなければいけない
そのへんに気を使わずプログラムを作ると速さに大きな差が出る
つまりメモリ管理は気にせず言語に任せておけばいいという言語じゃない
なのにガベージコレクションが発生する
2022/09/27(火) 12:04:52.19ID:pQ5zmsRD
>>509
今時数値計算をCPUでやるおじさんは老害
2022/09/27(火) 12:51:08.64ID:5P+0Jw0N
Juliaは多重ディスパッチでデータ型とアルゴリズム実装を自由に組み合わせられるみたいなのが売りの一つだと思うけど
ちゃんとテストされてない組み合わせだと簡単に計算結果を間違うという指摘が結構あって
数値計算向けの言語としては致命的なんではないかなぁと思っている
2022/09/27(火) 13:19:39.57ID:rf9DOsrN
カリー化の要領で単一ディスパッチに帰着するパターンの正式名称が致命的だった
2022/09/27(火) 15:29:16.37ID:bek5280g
>>511
本当に触ったことありますか?どんな言語だとしても、ループ内でのヒープメモリ割り当てなんて気を付けて書く。
それはRustだって同じ事、GCというかスコープを外れたらOSが回収するが、決してメモリーを気にしないような
プログラミングなんてしない、これはGoでもJavaでも同じ。これを気にしない人はカッコ付けて再帰呼び出しを
してみたりスタックさえ気にしない人が稀にいる
本当に言いたいことを最後に書く日本人の典型だと思うが、そりゃGCはGC系なので発生するでしょうね

>>512
いまどきならCUDA.jlやAMDGPU.jlというものがある。だがRustだとかGoだとかもGPUを普通は使ったりしない。
前者は標準の高階関数で悦に入ってるのがその証拠であり、後者は多数のgoroutineで疑似パラレル処理を
するわけだが稀にGPUを使うとしても特殊例に過ぎない

>>513
そりゃテストされてない組み合わせなんてまともに動くほうが稀だとおもうけど。Rustでいえば少し昔のactixを
async-stdで動かすようなもんだろう、動的呼び出しのコストを気にして、動的性がほとんどないRustやGoと
比べるのが違うんだろうと思うが、letだのvarだの書かないのは、型推測の究極系からいうとありだと思う。
パターンマッチングもあるし、ライバルはRustとかじゃなく、PythonのDeepleaning系やRなんだろうと思うが
516デフォルトの名無しさん
垢版 |
2022/09/27(火) 15:42:59.62ID:R6/41eV0
めっちゃw早口で言ってそうw
2022/09/27(火) 16:39:12.74ID:ZRU3zNgl
>>515
> どんな言語だとしても、ループ内でのヒープメモリ割り当てなんて気を付けて書く。

多くのGC言語では、そんなことを気にせずGC任せのプログラマーが多数派だと思います

> GCというかスコープを外れたらOSが回収するが、

ありえません
2022/09/27(火) 18:30:42.66ID:hEzYsdyZ
Rustみたいなバリバリの実用土方向け言語と比べるのは間違い。
2022/09/27(火) 18:38:52.09ID:pQ5zmsRD
>>515
必死で笑った
2022/09/27(火) 18:56:17.56ID:vJTIC1iI
>>515
本当まで読んだ
2022/09/27(火) 19:10:24.11ID:EQTYy8LW
>>518
え?ほとんど誰も使ってないんだけど
2022/09/27(火) 19:50:43.74ID:NlDwCy+I
>>518
Rustは管理部門がコーダーに押し付けたい言語。
社員監視用にマナー講師を雇うようなもんだ。
2022/09/27(火) 20:02:47.05ID:0rkJ8NRM
>>522
このまえはRustを趣味で使われる割合が多いと叩いていたのに叩く方針変更かね
Rustはプログラマーに愛されているプログラミング言語7年連続1位と記事が出ているけどどうするのかね
2022/09/27(火) 20:09:31.55ID:DiyGsTXL
>>515
各組み合わせごとに厳密にテストしないと組み合わせられないなら
「多重ディスパッチで簡単に組み合わせられます」とか言うなよってこと
そもそも静的型ならコンパイルエラーになるしPythonとかなら巨大なライブラリにみんなで乗っかる方式だから、組み合わせの問題が発生しやすいのはJulia固有の話
2022/09/27(火) 20:13:06.18ID:NlDwCy+I
>>523
今までも同じ主張しかしとらんよ。
これからは他人のために使うRustユーザーが増えていくから、愛され言語1位を維持するのは無理だろ。
PythonとかJavaの規模のなっても維持できているなら本物だな。
2022/09/27(火) 20:18:14.18ID:YwA5X+6D
Rustは他の言語よりコーティングしやすいしプログラマーにとっては嬉しい言語っす
2022/09/27(火) 20:49:24.20ID:R1T2sN7L
1から自分で好きなように書くならRustは気持ち良い言語なのは同意するけどね
Rustは個人の好みや癖が出やすい言語だから、他人のオナニーの後片付けは辛いぞ
Rubyしかり、創意工夫()の余地が大きくて楽しい()言語はレガシー化すると激しくプログラマに嫌われる傾向がある
2022/09/27(火) 21:06:03.50ID:fcAnqxP3
>>527
プログラミングしたことのない人には
RubyとRustは創意工夫の余地があって辛くて
他の言語には創意工夫の余地がないように見えているのか
そんなデタラメ書き散らす前にプログラミング経験積んで出直してこい
2022/09/27(火) 21:27:10.63ID:plkckm5B
Go追加>>478(>>450,461)
Language x10 x100 x200 x400 Memory Comment
--------------------------------------------------------------
Zig 0.118 1.073 2.113 4.203 3.2MB (std.HashMap, caller hash by Context(Fnv1a_64))
C(gcc) 0.136 1.146 2.271 4.531 2.0MB (optimized.c, binIO,jemalloc,O4,LTO)
C(clang/LLVM) 0.137 1.147 2.280 4.544 2.0MB (optimized.c, binIO,jemalloc,O3,LTO)
Go 0.152 1.233 2.428 4.832 3.9MB (caller hash,better loop) New
Go 0.164 1.346 2.654 5.279 3.8MB (caller hash)手元再現 New
Go 0.177 1.412 2.733 5.446 3.8MB (caller hash)<--参考値from過去スレ
Rust(LLVM) 0.154 1.425 2.838 5.674 2.6MB (optimized-customhashmap,O3,LTO,caller-hash)

以下、caller-hashではない
Go 0.085 0.366 0.693 1.319 61.9MB (parallel.go,reserve 65536/2)<--マルチスレッド New
Zig 0.162 1.493 2.970 5.935 4.6MB (std.StringHashMap)
Go 0.182 1.563 3.063 6.097 3.8MB (customhash.go,reserve 65536) New
Rust(LLVM) 0.214 1.725 3.396 6.715 3.5MB (optimized,fxhash,O3,LTO)

zig version 0.10.0-dev.4166+cae76d829
gcc 12.2.0/clang 15.0.0
go version go1.19.1
rustc 1.64.0 (a55dd71d5 2022-09-19)
CPU Zen3@boost max~4.75GHz

https://github.com/benhoyt/countwords

予想以上にGoが速かったが、最近の成果かもしれない。
https://go.dev/blog/go1.19 (2 August 2022)
>Go 1.19 includes a wide variety of performance and implementation improvements
2022/09/27(火) 21:40:42.21ID:w/rzDiTn
アルゴリズムの比較と言語の比較の区別がつかない人が未だに無意味なことを続けてるな~
2022/09/27(火) 22:51:31.16ID:EQTYy8LW
>>522
なるほど
2022/09/27(火) 23:06:01.46ID:pQ5zmsRD
社畜タイムだな
2022/09/27(火) 23:25:50.78ID:b2qWmeFJ
>>522
そんなホワイト企業があるなら名前教えてくれよ
2022/09/28(水) 11:39:35.28ID:LY5LAbp2
くせぇ、くせぇ、泥だらけ漢だらけで土方臭え!forループじゃなくmap使えとか親方ァは細かすぎる・・・
何がワシだって「下積みの頃はC未定義動作で行間を読んだもんだ!」だ!未定義動作書くなよ!?基本だろうが!#
何が「ここは大手の偉い人が書いたから変えらなかったんだよ!」だ!
Displayトレイトが滅多に表示しない方に使ってて頻繁に表示する方はいちいちdisp_xxxなんて呼ばないといけないんだ!
設計根本から間違ってるだろうが!
「Rustは気持ち良い言語、Rustは気持ちよく書ける」なんて2020年代前半に言われてたらしいが、もう憎しみしかない
お百度参りしても、この恨み晴れるとは思えない
オレこのデスマが終わったら、高給取りのAIのPython業界に転職するんだ・・・
2022/09/28(水) 12:04:48.31ID:aJVEzZZx
>>534
ことごとく勘違いしてるでしょ?

mapは単なる写像にすぎなくてループと対応するものではなくループの中の写像の文 let y = f(x); に対応するものです

未定義動作はunsafeを使わない限り発生しません

disp_xxxといったものは標準ライブラリにありません

以上から貴方はRustではなく異なる別のものを使っている可能性が高いです
536デフォルトの名無しさん
垢版 |
2022/09/28(水) 13:39:09.80ID:qn6QKhcv
顔真っ赤で一行開け必死で笑ったwwwキモッw
2022/09/28(水) 18:08:24.66ID:RGJlN0a6
rustは、haskellみたいにはならないと思う。
ロマンが足りない。オナニーしても気持ち良くない的な。
その点、juliaの方がロマン感じる。
2022/09/28(水) 18:19:46.86ID:TUTlK2Rr
rustは十分ロマンがあるよ
2022/09/28(水) 19:06:02.54ID:lioEJO8p
嫌いなのはわかるけど消去法でもRust一択だよ
まずスクリプト言語は速度と安全性がゴミなので論外
(書き捨てのスクリプトにのみ使うならアリ)

C/C++は論外
世界中のバグはこの言語から生まれている

JavaやC#もぬるぽ排除失敗
副作用まみれを助長する言語仕様
クソ重GCとJVM運用でオワコン

Goも結局ジェネリクス導入の失敗で標準ライブラリがジェネリクスなしの涙目に
安全性とは程遠い
言語仕様も一部よくわからない謎
さらにゴルーチンの書きにくさで並行処理の言語としても微妙

その他のモダン言語は結局本質的解決にはなってないから論外

よってRust一択
2022/09/28(水) 19:10:09.32ID:ToxcoP+T
>>539
Goはnil安全性すらないから前世紀の言語っぽい
2022/09/28(水) 19:15:39.85ID:6MwVPPZN
Goは色んな機能を削りすぎていて苦痛
ジェネリック導入で明るい未来を期待していたけどあんな使えない仕様になるとは
2022/09/28(水) 19:17:23.82ID:lioEJO8p
>>540
あーそれもあるか
err != nilには笑ったわ
なんかエディタのスニペットに登録してるから問題ないらしい
2022/09/28(水) 19:20:37.46ID:Jk2txA1W
正直NULL安全みたいな機能いるか?
Kotlinとかにもあるけど、結局NULL許容型も書けるし中途半端過ぎる
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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