スレタイ(順番はRedMonk準拠)以外の言語もok
※ Rustは現世代最強言語なので除外します
前スレ
次世代言語25 TypeScript Swift Go Kotlin Rust Nim
https://mevius.5ch.net/test/read.cgi/tech/1650185555/
次世代言語26 TypeScript Swift Go Kotlin Nim
■ このスレッドは過去ログ倉庫に格納されています
2022/06/21(火) 09:27:46.30ID:5vOFCGpG
415デフォルトの名無しさん
2022/07/25(月) 03:54:57.80ID:7j5KuiPU 顔真っ赤になってほとんど人がいない深夜に、これをやる。マトモだと思いますか?
こんな事書いてる暇があるなら、ましなコード書けよ。おまえの汚いコードで大勢が苦労してんだよ
こんな事書いてる暇があるなら、ましなコード書けよ。おまえの汚いコードで大勢が苦労してんだよ
416デフォルトの名無しさん
2022/07/25(月) 04:30:16.31ID:4yx4R0Hn >>414
何の参照を欲しいかに依る
中身の参照を欲しいならば
let x: Rc<i32> = Rc::new(123);
let p: &i32 = x.as_ref();
これで直接ポインタ
もちろん参照カウンタが増えることもなくコストはかからない
何の参照を欲しいかに依る
中身の参照を欲しいならば
let x: Rc<i32> = Rc::new(123);
let p: &i32 = x.as_ref();
これで直接ポインタ
もちろん参照カウンタが増えることもなくコストはかからない
417デフォルトの名無しさん
2022/07/25(月) 04:35:50.04ID:4yx4R0Hn Rust叩きしてる人の頭の中はこんな感じの妄想か
複数の参照を利用 → 参照カウンタが必要となるはずだ! → Rcを使う必要があるはずだ!
もちろんこれは間違いで
Rustでは複数の参照を利用しても
参照カウンタもRcも不要
複数の参照を利用 → 参照カウンタが必要となるはずだ! → Rcを使う必要があるはずだ!
もちろんこれは間違いで
Rustでは複数の参照を利用しても
参照カウンタもRcも不要
418デフォルトの名無しさん
2022/07/25(月) 05:58:18.25ID:1U7Sp33P それじゃそもそもRCって何で存在しているの?
何の為に参照カウンタがあるの?
何の為に参照カウンタがあるの?
419デフォルトの名無しさん
2022/07/25(月) 06:15:33.82ID:XNFIHMnD Rustの話題はRustスレでやった方がいいんじゃね?
なんかもうRustって見るだけで吐き気がしてきた
なんかもうRustって見るだけで吐き気がしてきた
420デフォルトの名無しさん
2022/07/25(月) 06:18:34.46ID:AKrlxTbS421デフォルトの名無しさん
2022/07/25(月) 06:25:52.20ID:8J+uEmne422デフォルトの名無しさん
2022/07/25(月) 06:37:19.48ID:8J+uEmne423デフォルトの名無しさん
2022/07/25(月) 06:39:01.08ID:GF1rw+EH >>418
俺に反論できなくなったので、要らないことになったのでは?
俺に反論できなくなったので、要らないことになったのでは?
424デフォルトの名無しさん
2022/07/25(月) 07:13:41.21ID:nBUvMOxq425デフォルトの名無しさん
2022/07/25(月) 07:39:05.16ID:Vq8THFea >>424
速いとか省メモリとか何か動機がないと
速いとか省メモリとか何か動機がないと
426デフォルトの名無しさん
2022/07/25(月) 07:55:15.70ID:nBUvMOxq >>425
なんでC++はNodeやGoに変わって使われないの?
なんでC++はNodeやGoに変わって使われないの?
427デフォルトの名無しさん
2022/07/25(月) 08:06:04.72ID:Vq8THFea >>426
安全じゃないと
安全じゃないと
428デフォルトの名無しさん
2022/07/25(月) 08:21:13.01ID:nBUvMOxq429デフォルトの名無しさん
2022/07/25(月) 08:52:04.73ID:9VZD4LMs430デフォルトの名無しさん
2022/07/25(月) 08:59:06.96ID:nBUvMOxq >>429
キチガイではなく一般論を話しているのみ。Nodeが流行った理由知らないのか
単語をカウントするプログラムのベンチマークをした記事
Goがシンプル版、最適化版両方Rustより速いようだけどRust玄人さんはこれどう解釈するの?
メモリ効率がいいから速いんじゃねーの?
https://benhoyt.com/writings/count-words/
Goがライターが書いていて、Rustはripgrepの作者が作ってるみたいだけどw
キチガイではなく一般論を話しているのみ。Nodeが流行った理由知らないのか
単語をカウントするプログラムのベンチマークをした記事
Goがシンプル版、最適化版両方Rustより速いようだけどRust玄人さんはこれどう解釈するの?
メモリ効率がいいから速いんじゃねーの?
https://benhoyt.com/writings/count-words/
Goがライターが書いていて、Rustはripgrepの作者が作ってるみたいだけどw
431デフォルトの名無しさん
2022/07/25(月) 09:31:41.84ID:LVt6e5K4432デフォルトの名無しさん
2022/07/25(月) 09:33:37.20ID:X3gippUK433デフォルトの名無しさん
2022/07/25(月) 09:39:39.23ID:6EAs3JIP434デフォルトの名無しさん
2022/07/25(月) 09:40:42.26ID:4fLf8Vq5 >>418
普通にデータなどを格納するコレクションを作るときに直接使用する、例えばVecとか
上のほうで書いてある「Rcが滅多に使われない」は大変な間違い。
多くのプログラムは間接的にほぼ間違いなく多く使用している、もちろん全く使用しないプログラムもあるがそちらのほうが例外。
当然、参照カウントはセマンティックムーブのある言語で所有権の複製時にはカウントアップされる
https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=39acf5e2c625c2e5ccd8f9cca466f64c
スキル学習で分かりにくいのは、この種の言語の一般的な用語である「(ただ単に)参照」とは所有権の複製ではないという事
対して「可変参照」をとる場合、mutableな借用とされ参照カウントが0/1以外にもカウントアップされる。よって参照カウントが
実行時にボトルネックになる可能性があるという話は正しく、無意味に「コストゼロ、コストを必要としない」などを連呼する事は
とても近寄りがたい雰囲気を醸し出す
普通は中身を見るだけではなく格納している値を処理するので、可変参照を使うので、参照カウントがコストが無いなんていう
ふざけた説明は論外。この種の宗教的な勧誘は「コストゼロ、コストを必要としない」などを連呼する狂信性を発病する
普通にデータなどを格納するコレクションを作るときに直接使用する、例えばVecとか
上のほうで書いてある「Rcが滅多に使われない」は大変な間違い。
多くのプログラムは間接的にほぼ間違いなく多く使用している、もちろん全く使用しないプログラムもあるがそちらのほうが例外。
当然、参照カウントはセマンティックムーブのある言語で所有権の複製時にはカウントアップされる
https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=39acf5e2c625c2e5ccd8f9cca466f64c
スキル学習で分かりにくいのは、この種の言語の一般的な用語である「(ただ単に)参照」とは所有権の複製ではないという事
対して「可変参照」をとる場合、mutableな借用とされ参照カウントが0/1以外にもカウントアップされる。よって参照カウントが
実行時にボトルネックになる可能性があるという話は正しく、無意味に「コストゼロ、コストを必要としない」などを連呼する事は
とても近寄りがたい雰囲気を醸し出す
普通は中身を見るだけではなく格納している値を処理するので、可変参照を使うので、参照カウントがコストが無いなんていう
ふざけた説明は論外。この種の宗教的な勧誘は「コストゼロ、コストを必要としない」などを連呼する狂信性を発病する
435デフォルトの名無しさん
2022/07/25(月) 09:47:57.99ID:pT/R/RrL436デフォルトの名無しさん
2022/07/25(月) 10:02:55.50ID:2pceaDTd >>428-429
基本的なことを全くわかってないでなんでも独自解釈で間違った判断してると思うわ
なんでも狂っていたりそう簡単にぶっ壊れたりするもんじゃないから、
自分の予測と違った結果になったら基本的な用語とか使いかたを勉強し直さないと先に進めないと思う
基本的なことを全くわかってないでなんでも独自解釈で間違った判断してると思うわ
なんでも狂っていたりそう簡単にぶっ壊れたりするもんじゃないから、
自分の予測と違った結果になったら基本的な用語とか使いかたを勉強し直さないと先に進めないと思う
437デフォルトの名無しさん
2022/07/25(月) 10:10:53.79ID:YiK1YmC6 >>435
Rustはプログラマーへ負担を大変に強制する言語でありながら、問題解決している分野はとても狭い....
メモリーを限界まで使用してアクセスが高負荷な環境では確かに良いかもしれないが
Pythonなどの自動学習ライブラリ(多くはC/C++で書かれる)やNodeやTypescript/JSなどが主流であるフロントエンドには非常に使いづらい。
またスマートフォンのアプリ開発も出来なくは無いが両陣営からあまり重視されていない、最近では大企業も使用をしているが
Googleなどは多くはまだメニーコアを素直に活用できるGoを使用する(社内の標準言語)
ここまで否定的なことを、ハッキリ言える狂信者は居ないとおもう
Rustはプログラマーへ負担を大変に強制する言語でありながら、問題解決している分野はとても狭い....
メモリーを限界まで使用してアクセスが高負荷な環境では確かに良いかもしれないが
Pythonなどの自動学習ライブラリ(多くはC/C++で書かれる)やNodeやTypescript/JSなどが主流であるフロントエンドには非常に使いづらい。
またスマートフォンのアプリ開発も出来なくは無いが両陣営からあまり重視されていない、最近では大企業も使用をしているが
Googleなどは多くはまだメニーコアを素直に活用できるGoを使用する(社内の標準言語)
ここまで否定的なことを、ハッキリ言える狂信者は居ないとおもう
438デフォルトの名無しさん
2022/07/25(月) 10:31:51.75ID:qMC/1j9+ C/C++は危険だよ問題という
狭い問題のために過大なコストを消費するのは
Rust以前の時代からあった非合理的行動なんだよな
狭い問題のために過大なコストを消費するのは
Rust以前の時代からあった非合理的行動なんだよな
439デフォルトの名無しさん
2022/07/25(月) 11:25:18.08ID:dJJE5upa 新興勢力の宣伝の常套手段の一つ
既存の勢力を貶めること
個人的には好きではないしむしろ忌み嫌うやり方
既存の勢力を貶めること
個人的には好きではないしむしろ忌み嫌うやり方
440デフォルトの名無しさん
2022/07/25(月) 12:45:23.61ID:PJasBk3j >>430
Nimが良いな。
Nimが良いな。
441デフォルトの名無しさん
2022/07/25(月) 12:55:06.04ID:NiS5Jdh/ Nim++
Nim#
Nim#
442デフォルトの名無しさん
2022/07/25(月) 14:26:21.66ID:qfCVZU8h >>437
Rustはれっきとした機械学習のライブラリや言語処理系を*作るため*の言語だよ
Rustは機械語を吐くコンパイラやトランスパイラのようなものに向いてるし
それってフロントエンドが今必死になって取り組んでる分野ではないの?
簡単に書けて省メモリかつ速い言語なんてないよ
夢見すぎ
Rustはれっきとした機械学習のライブラリや言語処理系を*作るため*の言語だよ
Rustは機械語を吐くコンパイラやトランスパイラのようなものに向いてるし
それってフロントエンドが今必死になって取り組んでる分野ではないの?
簡単に書けて省メモリかつ速い言語なんてないよ
夢見すぎ
443デフォルトの名無しさん
2022/07/25(月) 14:42:37.10ID:PJasBk3j >>441
Nimが十分抽象表現できてるからNim++は意味ねーだろ
Nimが十分抽象表現できてるからNim++は意味ねーだろ
444デフォルトの名無しさん
2022/07/25(月) 14:47:29.52ID:MBqXfUDU >>437
Pythonの自動学習ライブラリはフロントエンドではない
さらに多くがC++で書かれている自動学習ライブラリに対してRustが非常に使いづらいと主張するなら根拠を書くべき
C++が多いのは長年の時間の差だけであり現在はPythonからRustを呼び出すこともできるようになったので今後は色々と出て来るだろう
Pythonの自動学習ライブラリはフロントエンドではない
さらに多くがC++で書かれている自動学習ライブラリに対してRustが非常に使いづらいと主張するなら根拠を書くべき
C++が多いのは長年の時間の差だけであり現在はPythonからRustを呼び出すこともできるようになったので今後は色々と出て来るだろう
445デフォルトの名無しさん
2022/07/25(月) 15:03:49.84ID:ZKQpDD7R 自動学習?
446デフォルトの名無しさん
2022/07/25(月) 15:20:21.13ID:/ac3g8+o >>434
デタラメな説明はよろしくないな
君はRustを叩きたい側だからだろうが根本的な理解ができていない
特に酷いのは「所有権の複製」
Rustにそんな概念も用法も無い
Rcが滅多に使われないというのは事実
様々なRustのライブラリ(クレート)を見てもRcの出現は非常に少なくArcよりも圧倒的に少ない
Arcが多い理由はマルチスレッドでデータを共有するためで別々の所有者だから
Rcはシングルスレッド用だから別々の所有者を必要とすることが非常に少ない
まれにRcを必要とすることもあるが本当に必要なのかをまずは疑うべき
さらにRc/Arcでカウントアップ/ダウンは滅多に起きない事象であるため負荷を批判するのもおかしい
例えばマルチスレッド間のデータ共有でArcを使うとしてもスレッド生成で+1されスレッド終了で−1されるのみだからスレッド生成に対して誤差である
このように新たな所有主体が現れること自体の負荷と比べて数値を+1することは誤差
デタラメな説明はよろしくないな
君はRustを叩きたい側だからだろうが根本的な理解ができていない
特に酷いのは「所有権の複製」
Rustにそんな概念も用法も無い
Rcが滅多に使われないというのは事実
様々なRustのライブラリ(クレート)を見てもRcの出現は非常に少なくArcよりも圧倒的に少ない
Arcが多い理由はマルチスレッドでデータを共有するためで別々の所有者だから
Rcはシングルスレッド用だから別々の所有者を必要とすることが非常に少ない
まれにRcを必要とすることもあるが本当に必要なのかをまずは疑うべき
さらにRc/Arcでカウントアップ/ダウンは滅多に起きない事象であるため負荷を批判するのもおかしい
例えばマルチスレッド間のデータ共有でArcを使うとしてもスレッド生成で+1されスレッド終了で−1されるのみだからスレッド生成に対して誤差である
このように新たな所有主体が現れること自体の負荷と比べて数値を+1することは誤差
447デフォルトの名無しさん
2022/07/25(月) 16:01:59.92ID:N2Q3Sx/d448デフォルトの名無しさん
2022/07/25(月) 16:04:20.43ID:LpioO7nY449デフォルトの名無しさん
2022/07/25(月) 16:06:38.58ID:LxBh6KBX >>432
例えばC言語でグラフを実装する時も生のポインタのみで実装されることはありません
なぜなら各ノードのメモリを解放するタイミングがわからなくなるためです
そこで主に三つの方法が取られます
一つは各ノード一覧を配列などで持っておくとともに定期的にルートから到達可能か到達フラグを用意します
そしてノード一覧の中で到達フラグが立っていないものをメモリ解放します
この方法の欠点は4つあり
(1) ノード一覧を管理する配列が別途必要となる
(2) 到達フラグが必要となる
(3) 定期的に到達可能かを調べる必要がある
(4) 使われなくなったノードがすぐには解放されない
もう一つの方法は定期的コピー方式です
ルートから到達可能な部分を定期的に別の場所にコピーします
コピーされなかった部分が到達できない使われていない部分なのでまとめて解放となります
この方法の欠点は
(1) この方法も定期的な実行が必要となる
(2) メモリ空間が2倍必要となる
(3) 使われてる全体が定期的にメモリコピーされる負荷
(4) 使われなくなったノードがすぐには解放されない
残りの方法は参照カウンタ方式です
おなじみなので略します
いずれの方法も様々な欠点があります
このグラフのノード解放問題は
ガベージコレクションを必要とするプログラミング言語にそのまま当てはまります
GCの負荷コストを理解していただけましたでしょうか?
例えばC言語でグラフを実装する時も生のポインタのみで実装されることはありません
なぜなら各ノードのメモリを解放するタイミングがわからなくなるためです
そこで主に三つの方法が取られます
一つは各ノード一覧を配列などで持っておくとともに定期的にルートから到達可能か到達フラグを用意します
そしてノード一覧の中で到達フラグが立っていないものをメモリ解放します
この方法の欠点は4つあり
(1) ノード一覧を管理する配列が別途必要となる
(2) 到達フラグが必要となる
(3) 定期的に到達可能かを調べる必要がある
(4) 使われなくなったノードがすぐには解放されない
もう一つの方法は定期的コピー方式です
ルートから到達可能な部分を定期的に別の場所にコピーします
コピーされなかった部分が到達できない使われていない部分なのでまとめて解放となります
この方法の欠点は
(1) この方法も定期的な実行が必要となる
(2) メモリ空間が2倍必要となる
(3) 使われてる全体が定期的にメモリコピーされる負荷
(4) 使われなくなったノードがすぐには解放されない
残りの方法は参照カウンタ方式です
おなじみなので略します
いずれの方法も様々な欠点があります
このグラフのノード解放問題は
ガベージコレクションを必要とするプログラミング言語にそのまま当てはまります
GCの負荷コストを理解していただけましたでしょうか?
450デフォルトの名無しさん
2022/07/25(月) 16:46:22.65ID:PkQCRHsR >>446
このように顔真っ赤になって、怒り心頭で攻撃してきます、激おこぷんぷん...マジでRustコミュニティはこういう輩の扱い考えたほうが良い....
>特に酷いのは「所有権の複製」
頭から「君はRustを叩きたい側だからだろう」という下種な勘ぐりを持って色眼鏡で相手と話し合う事はできませんし、これ以上
狂者を相手をするつもりもありませんが、デタラメ/間違いなら、より正しい言葉で説明したら良いじゃない?
なぜ1番先に書いたことを無説明で流し、Rc/Arcなんかの長文説明でグチグチ言ってるんです?
下のコメで「メモリーを限界まで使用してアクセスが高負荷な環境では確かに良い」と認めているのがあなたの目には見えませんか?
>Rcが滅多に使われないというのは事実
RcはStringにさえ使われています。あなたから薄ら頭に付いてる目から見える「事実」は隠されたライブラリの中に存在しているようですが
そこでもArcの話なんてしていません。Rcのスレッドセーフ版がArcなだけで、グダクダと口臭いArcの説明なんて誰も求めていません。
さらに参照カウントの一般的な欠点を説明しているのに、「批判するのがおかしい」と「誤差」なんてそれだから一般的なプログラマーから
ドン引きされるんですよ。
このように顔真っ赤になって、怒り心頭で攻撃してきます、激おこぷんぷん...マジでRustコミュニティはこういう輩の扱い考えたほうが良い....
>特に酷いのは「所有権の複製」
頭から「君はRustを叩きたい側だからだろう」という下種な勘ぐりを持って色眼鏡で相手と話し合う事はできませんし、これ以上
狂者を相手をするつもりもありませんが、デタラメ/間違いなら、より正しい言葉で説明したら良いじゃない?
なぜ1番先に書いたことを無説明で流し、Rc/Arcなんかの長文説明でグチグチ言ってるんです?
下のコメで「メモリーを限界まで使用してアクセスが高負荷な環境では確かに良い」と認めているのがあなたの目には見えませんか?
>Rcが滅多に使われないというのは事実
RcはStringにさえ使われています。あなたから薄ら頭に付いてる目から見える「事実」は隠されたライブラリの中に存在しているようですが
そこでもArcの話なんてしていません。Rcのスレッドセーフ版がArcなだけで、グダクダと口臭いArcの説明なんて誰も求めていません。
さらに参照カウントの一般的な欠点を説明しているのに、「批判するのがおかしい」と「誤差」なんてそれだから一般的なプログラマーから
ドン引きされるんですよ。
451デフォルトの名無しさん
2022/07/25(月) 16:51:48.53ID:Yk1WTUPx452デフォルトの名無しさん
2022/07/25(月) 17:01:49.95ID:PkQCRHsR >>451
https://doc.rust-lang.org/src/alloc/string.rs.html
pub struct String {
vec: Vec<u8>,
}
これだと言葉足らずですが、リテラルから生成するString::fromなどはこのようになります
https://doc.rust-lang.org/src/alloc/string.rs.html
pub struct String {
vec: Vec<u8>,
}
これだと言葉足らずですが、リテラルから生成するString::fromなどはこのようになります
453デフォルトの名無しさん
2022/07/25(月) 17:05:57.06ID:mpRQ8kqk >>450
> RcはStringにさえ使われています。
嘘つき!
RcはStringで当然使われていないだけだなく
Rust標準ライブラリの中でも(Rc自体の
部分を除き)Rcは全く使われていない
一般的にもRcは使われることが少ない
もちろんRcを使うべき例外も一部あるがRcを使う前に構造の見直しを勧める
> RcはStringにさえ使われています。
嘘つき!
RcはStringで当然使われていないだけだなく
Rust標準ライブラリの中でも(Rc自体の
部分を除き)Rcは全く使われていない
一般的にもRcは使われることが少ない
もちろんRcを使うべき例外も一部あるがRcを使う前に構造の見直しを勧める
454デフォルトの名無しさん
2022/07/25(月) 17:28:44.47ID:RV7OdbkD 標準ライブラリでRcが使われてないのは
オーバーヘッドを嫌ってunsafeを使った代替実装が使われてるからだぞ
オーバーヘッドを嫌ってunsafeを使った代替実装が使われてるからだぞ
455デフォルトの名無しさん
2022/07/25(月) 17:32:52.00ID:JQ4EiZH/456デフォルトの名無しさん
2022/07/25(月) 17:35:20.01ID:8LuMiuhM 人を嘘つき呼ばわりするキチガイを使う前に見直しを勧める
Rustは一人でやる分には良いけど、こういう奴とは絶対組みたくない、stdしか見えないアホ、ドアホォ
std::collectionsにないコレクションを使いたければ自分で実装するかgithubなどで拾ってくる必要があるのに、お前の顔見直せよ
Rustは一人でやる分には良いけど、こういう奴とは絶対組みたくない、stdしか見えないアホ、ドアホォ
std::collectionsにないコレクションを使いたければ自分で実装するかgithubなどで拾ってくる必要があるのに、お前の顔見直せよ
457デフォルトの名無しさん
2022/07/25(月) 17:57:22.48ID:eESAVdRW458デフォルトの名無しさん
2022/07/25(月) 18:18:18.06ID:qMC/1j9+459デフォルトの名無しさん
2022/07/25(月) 18:57:52.01ID:xyOpOgqp Python代替を狙いたいなら、脳死スニペットコピペで、
Excelファイルが編集できて便利ね。くらいを目指さないと無理じね?
Excelファイルが編集できて便利ね。くらいを目指さないと無理じね?
460デフォルトの名無しさん
2022/07/25(月) 19:33:13.71ID:GF1rw+EH 自分で使わないならダメじゃん?
Rc。
Rc。
461デフォルトの名無しさん
2022/07/25(月) 19:37:10.91ID:GF1rw+EH だいたい、Haskell全然流行っていないじゃんか。
世界のすべてがHaskellに代わるんじゃなかったのかよ?
Rustが流行るとか言われてももう信じられんわ。
D言語だって全然流行らなかったし。
世界のすべてがHaskellに代わるんじゃなかったのかよ?
Rustが流行るとか言われてももう信じられんわ。
D言語だって全然流行らなかったし。
462デフォルトの名無しさん
2022/07/25(月) 19:48:55.75ID:GF1rw+EH 結局一番使える凄いやつはExcel VBAだと思うね。
一番役に立つじゃん。
一番役に立つじゃん。
463デフォルトの名無しさん
2022/07/25(月) 19:54:28.52ID:8fqJaMrc >>460
RcをRust標準ライブラリや多くの外部ライブラリが使っていない理由は、Rcがダメだからではなく、
Rcが対象とするシングルスレッド環境においては、所有者が複数となることがない、もしくは、避けられることが多いため。
使わなくてよい時は使わず、どうしてもRcを使う必要がある時のみ使う、という当たり前の行動の結果。
RcをRust標準ライブラリや多くの外部ライブラリが使っていない理由は、Rcがダメだからではなく、
Rcが対象とするシングルスレッド環境においては、所有者が複数となることがない、もしくは、避けられることが多いため。
使わなくてよい時は使わず、どうしてもRcを使う必要がある時のみ使う、という当たり前の行動の結果。
464デフォルトの名無しさん
2022/07/25(月) 19:55:45.54ID:GF1rw+EH 言い訳は要らないんだよ。
465デフォルトの名無しさん
2022/07/25(月) 19:56:57.83ID:GF1rw+EH RustよりGoのほうが速いじゃん。
466デフォルトの名無しさん
2022/07/25(月) 20:00:32.25ID:GF1rw+EH こんな遅いんだったらRustなんか使うんじゃなかったってみんな言ってるわ。
467デフォルトの名無しさん
2022/07/25(月) 20:06:54.34ID:AMmqdU+/ >>466
RustはC++よりも速い結果が出ることも多い中で何を言ってるんだ??
RustはC++よりも速い結果が出ることも多い中で何を言ってるんだ??
468デフォルトの名無しさん
2022/07/25(月) 20:08:53.16ID:cWo2MzNn >>449
延々と変なことを書いてるなとしか
延々と変なことを書いてるなとしか
469デフォルトの名無しさん
2022/07/25(月) 20:16:00.56ID:GF1rw+EH RustはHaskellの後継言語では?
口だけ番長みたいな。
口だけ番長みたいな。
470デフォルトの名無しさん
2022/07/25(月) 20:18:22.01ID:qMC/1j9+ 速い遅いは1bit的な100パーセントの保証ができないからね
逆に、変数の型を全く書かない、ゼロを保証するPythonのようなものは誠実な印象になる
逆に、変数の型を全く書かない、ゼロを保証するPythonのようなものは誠実な印象になる
471デフォルトの名無しさん
2022/07/25(月) 20:29:29.58ID:n2SYQgGe >>455
それ測定方法がおかしい
解いていないとはいえ、grepが一番速くて、次にwcが速くて、それらはC言語で書いたものより速くなっている
解いているシェルスクリプトですら1.83秒しかかかっておらず、Rubyの最適化版に至ってはシェルスクリプトより遅い結果となっている
最適化版のコードも一人が提供しただけであり、これでは意味がなかろう
その程度の課題でプログラミング言語間の時間比較に意味あるのか?
それ測定方法がおかしい
解いていないとはいえ、grepが一番速くて、次にwcが速くて、それらはC言語で書いたものより速くなっている
解いているシェルスクリプトですら1.83秒しかかかっておらず、Rubyの最適化版に至ってはシェルスクリプトより遅い結果となっている
最適化版のコードも一人が提供しただけであり、これでは意味がなかろう
その程度の課題でプログラミング言語間の時間比較に意味あるのか?
472デフォルトの名無しさん
2022/07/25(月) 20:30:15.46ID:8BHj2ErZ よく分からんけれど、CPythonに代わる速くて安全で効率の良いRustPythonを作るのが良いのではないだろうか?
473デフォルトの名無しさん
2022/07/25(月) 20:32:58.49ID:GF1rw+EH RustはPHPと変わらないじゃん。
PHP速いわー。
PHP速いわー。
474デフォルトの名無しさん
2022/07/25(月) 20:34:05.94ID:GF1rw+EH Haskellおっそ。
なんなんこれ。
12.81だって。
なんなんこれ。
12.81だって。
475デフォルトの名無しさん
2022/07/25(月) 20:38:25.47ID:GF1rw+EH 仮にも地球を代表するプログラマが遅い速いは時の運とか言っちゃだめだと思うわ。
476デフォルトの名無しさん
2022/07/25(月) 20:44:28.71ID:nBUvMOxq477デフォルトの名無しさん
2022/07/25(月) 20:47:52.05ID:GF1rw+EH こんだけ凝って、こんだけ遅いって、Rustの見事な性能の表れでしょ。
そりゃ誰も使いませんわ。
こんなの使ってたら宗教ですよ。
信徒ですよ。
そりゃ誰も使いませんわ。
こんなの使ってたら宗教ですよ。
信徒ですよ。
478デフォルトの名無しさん
2022/07/25(月) 20:52:51.88ID:GF1rw+EH はい、エビデンス出ましたー。
479デフォルトの名無しさん
2022/07/25(月) 20:56:02.00ID:aidYcMa/ >>476
ちょっとコードを見てみたけど両者でやっていることが異なるね
例えばGoのコードと異なりRustのコードはバッファ内をcopy_withinでコピーしていたりするなどGoにはないコードがあるような
ちょっとコードを見てみたけど両者でやっていることが異なるね
例えばGoのコードと異なりRustのコードはバッファ内をcopy_withinでコピーしていたりするなどGoにはないコードがあるような
480デフォルトの名無しさん
2022/07/25(月) 20:59:34.44ID:GF1rw+EH また言い訳が始まった。
481デフォルトの名無しさん
2022/07/25(月) 21:05:06.38ID:+hqW1c0q まだコードをよく見ていないが、
他のベンチマークではGoがいつも負けていて、
今回だけGoが勝っているのだから、
何か裏があると推測できる。
他のベンチマークではGoがいつも負けていて、
今回だけGoが勝っているのだから、
何か裏があると推測できる。
482デフォルトの名無しさん
2022/07/25(月) 21:07:28.31ID:GF1rw+EH トイプログラムやベンチマークではRustのほうが速いけど、こういう実用的なプログラムではGoのほうが速いってことじゃないの?
483デフォルトの名無しさん
2022/07/25(月) 21:08:19.44ID:X7PH+Zk7 もしデータが間違っているなら理屈と直感で判断すればいい
全ての情報源が正直者でなければ何もできないことを性善説という
全ての情報源が正直者でなければ何もできないことを性善説という
484デフォルトの名無しさん
2022/07/25(月) 21:09:45.71ID:GF1rw+EH 4Kb未満のデータはRustのほうが速いけど、
それ以上のデータでは、Goのほうが速いのでは?
それ以上のデータでは、Goのほうが速いのでは?
485デフォルトの名無しさん
2022/07/25(月) 21:11:43.19ID:GF1rw+EH わし、単体テストにベンチマークも入れてるよ?
486デフォルトの名無しさん
2022/07/25(月) 21:19:04.59ID:GF1rw+EH キャッシュを上手に使えるGoと、全く考慮しないRustの違いが出てるのでは?
487デフォルトの名無しさん
2022/07/25(月) 21:19:28.30ID:7b2W3YWe >>430
まずCのコードを読んだが特にトリッキーなことをしていないので
そのままRustに書き換えればいつものC→RustのようにRustでほぼCと同じ速さが出るだろうな
一方でそこに書かれているRustのコードはCの2倍近く遅くて普通にありえない結果となってるな
まずCのコードを読んだが特にトリッキーなことをしていないので
そのままRustに書き換えればいつものC→RustのようにRustでほぼCと同じ速さが出るだろうな
一方でそこに書かれているRustのコードはCの2倍近く遅くて普通にありえない結果となってるな
488デフォルトの名無しさん
2022/07/25(月) 21:21:31.99ID:GF1rw+EH また言い訳かよ。
負けたんだよ、Rustは。
負けたんだよ、Rustは。
489デフォルトの名無しさん
2022/07/25(月) 21:23:25.12ID:GF1rw+EH じゃあ、Rustにprogress_displayはあるのかよ?
490デフォルトの名無しさん
2022/07/25(月) 21:26:07.93ID:GF1rw+EH progress_display無かったら要らんわ。
しかも遅いし。
しかも遅いし。
491デフォルトの名無しさん
2022/07/25(月) 21:58:27.37ID:4KCQJPyi492デフォルトの名無しさん
2022/07/25(月) 22:00:37.54ID:SeYpjqPN >>430のベンチマークの方法とか見てたんだが
1. 時間はpythonのsubprocess.runで独立した試行を5回行っている。
2. 5回のうち最速のものを記録にしている。
だから、Javaみたいに起動時に重い言語は不利なのと、同じくらいの速度だと計算機の機嫌で順位が入れ替わりそう。
1. 時間はpythonのsubprocess.runで独立した試行を5回行っている。
2. 5回のうち最速のものを記録にしている。
だから、Javaみたいに起動時に重い言語は不利なのと、同じくらいの速度だと計算機の機嫌で順位が入れ替わりそう。
493デフォルトの名無しさん
2022/07/25(月) 22:03:54.64ID:GF1rw+EH Rustは糞遅いから入れ替わらない。
494デフォルトの名無しさん
2022/07/25(月) 22:06:10.72ID:krXhYbIy Juliaって愛される言語5位とかに入っていたけど、あんまり流行る気配ないよね
PythonからJulia主体にならんか
PythonからJulia主体にならんか
495デフォルトの名無しさん
2022/07/25(月) 22:06:51.57ID:FztPljLn あとRustのCっぽいバージョンは何に対してas fastなんだろう
496デフォルトの名無しさん
2022/07/25(月) 22:08:02.42ID:GF1rw+EH ちょっと検索してみたんだがGoは並行処理が得意らしいぞ。
俺の12900HX16コア24スレッドが有効に使えるのでは?
もしかして。
俺の12900HX16コア24スレッドが有効に使えるのでは?
もしかして。
497デフォルトの名無しさん
2022/07/25(月) 22:08:47.70ID:GF1rw+EH Cっぽくないバージョンに対してだろね。
498デフォルトの名無しさん
2022/07/25(月) 22:19:58.19ID:4KCQJPyi HashMapを高速なハッシュに変えたらRustの勝ち
解散
解散
499デフォルトの名無しさん
2022/07/25(月) 22:31:12.16ID:FztPljLn500デフォルトの名無しさん
2022/07/25(月) 22:51:30.63ID:m2kvc7p2 俺の環境だとRustの方が少しだけ速かったな
バージョンアップで多少改善されたのかも。誤差程度だけど
バージョンアップで多少改善されたのかも。誤差程度だけど
501デフォルトの名無しさん
2022/07/25(月) 22:53:16.38ID:7b2W3YWe >>499
(衝突攻撃安全性に優れるが遅い)Rust標準ライブラリのHashMapよりも
今回は(Rustコンパイラ等でも使われている)速いfxhashを使った方が良いとのアドバイスがあっただけで
実際に使っているコードはHashMapのままになってるような
(衝突攻撃安全性に優れるが遅い)Rust標準ライブラリのHashMapよりも
今回は(Rustコンパイラ等でも使われている)速いfxhashを使った方が良いとのアドバイスがあっただけで
実際に使っているコードはHashMapのままになってるような
502デフォルトの名無しさん
2022/07/25(月) 23:18:27.95ID:SeYpjqPN >>501
optimizedのmain.rsは
use fxhash::{FxHashMap as HashMap};
となってるんだけど
これはfxhashを使って高速化してるわけではない?
それともベンチマークに反映してないのか?
optimizedのmain.rsは
use fxhash::{FxHashMap as HashMap};
となってるんだけど
これはfxhashを使って高速化してるわけではない?
それともベンチマークに反映してないのか?
503デフォルトの名無しさん
2022/07/26(火) 00:27:41.06ID:6K/UlhEh >>472
つ Nim
つ Nim
504デフォルトの名無しさん
2022/07/26(火) 00:30:04.25ID:6K/UlhEh505デフォルトの名無しさん
2022/07/26(火) 00:33:32.10ID:7eeTS5R1 Rustがこんなに遅いとは知らんかった。
506デフォルトの名無しさん
2022/07/26(火) 01:36:48.26ID:gGUkeHRo いつものやつ貼っておくか
https://benchmarksgame-team.pages.debian.net/benchmarksgame/box-plot-summary-charts.html
ChapelとJuliaすごいじゃん
https://benchmarksgame-team.pages.debian.net/benchmarksgame/box-plot-summary-charts.html
ChapelとJuliaすごいじゃん
507デフォルトの名無しさん
2022/07/26(火) 05:00:13.51ID:O8zJADrT ワードカウントの結果だけで性能評価してしまうプログラマがいるんですか!?
508デフォルトの名無しさん
2022/07/26(火) 08:14:27.14ID:sEULh4Zl509デフォルトの名無しさん
2022/07/26(火) 08:27:06.16ID:B/e7/0Va Rustのコードがおかしいと言うなら、改善したコード出せばいいんじゃない?
ワードカウントじゃ言語の性能はわからないとか言うんだったら、Rust有利なベンチマーク作ればいいんじゃない?
Rust簡単とか言っているやつなら余裕だろ。
ワードカウントじゃ言語の性能はわからないとか言うんだったら、Rust有利なベンチマーク作ればいいんじゃない?
Rust簡単とか言っているやつなら余裕だろ。
510デフォルトの名無しさん
2022/07/26(火) 08:44:40.79ID:/siOCA+g 批判されていることは「性能が悪い」というより「コストの割には性能が微妙」というニュアンスなので
コードを一行も書かないことがコスト最小なんだよ
コストの話をするとコードを書く奴がいなくなる
コードを一行も書かないことがコスト最小なんだよ
コストの話をするとコードを書く奴がいなくなる
511デフォルトの名無しさん
2022/07/26(火) 10:02:50.90ID:dWbaeKdQ 高級機能があってランタイム最強!っていう厨二病的なモチベーションだからほっとけばいいんだよ。
そのうち気づくし、気づかなくても知ったこっちゃない。
そのうち気づくし、気づかなくても知ったこっちゃない。
512デフォルトの名無しさん
2022/07/26(火) 10:11:09.19ID:cX/Q+77r513デフォルトの名無しさん
2022/07/26(火) 10:29:35.69ID:NhFYQzcJ Rust遅すぎじゃね?
https://res.cloudinary.com/practicaldev/image/fetch/s--n3XlUkmN--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/cqj6u280qmdwq7fgnw5h.png
https://res.cloudinary.com/practicaldev/image/fetch/s--n3XlUkmN--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/cqj6u280qmdwq7fgnw5h.png
514デフォルトの名無しさん
2022/07/26(火) 10:43:17.89ID:/siOCA+g RAIIだけの問題ならGoは使わない方がよさそう
C++だけで書いてexitとabortを比較とかすればいいのでは
C++だけで書いてexitとabortを比較とかすればいいのでは
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国国連大使「日本が中国に武力行使すると脅しをかけたのは初めて」 国連事務総長に書簡★4 [♪♪♪★]
- 【芸能】44歳・池脇千鶴、激変ぶりにネット衝撃 「まるで別人…」「変化が凄い!!」の声 [冬月記者★]
- なぜ立花孝志氏の言葉は信じられたのか…"異例の逮捕"が浮き彫りにした「SNSの危険な病理」 [ぐれ★]
- 中国「国連安保理の許可なしに日本攻撃可能」 Xで旧敵国条項に言及… ★15 [BFU★]
- 竹中平蔵氏、万博は大成功だったと持論 批判していた人々にチクリ「反省の弁の一つも聞きたい」 [バイト歴50年★]
- 「国民的な年越し番組」だったのに「知らないアイドルばかり」の紅白をアラフォー以上はどう楽しめばいい? [muffin★]
- 人消えろ
- 風呂入ったあとうんこしたら損した気分になるよな
- 中国政府「私たちが怒っているのは日本国民じゃない」
- (っ◞‸◟c)
- 【愛国者悲報】サナエ、カードゲームで敗北... [856698234]
- 中国「ごめん、色々やりすぎた謝るから和解してほしい」高市首相「舐めてんの?」 [834922174]
