スレタイ(順番は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
レス数が950を超えています。1000を超えると書き込みができなくなります。
2022/06/21(火) 09:27:46.30ID:5vOFCGpG
897デフォルトの名無しさん
2022/08/01(月) 22:40:21.87ID:67qbuqx0 Rust と言うゲームがあるみたい。
それで、Rustは言語ランキングが1位になるのかも
並行プログラミングでは、Elixir。
100GB ぐらいのメモリで、5,000万個の小プロセスが稼働する
Ruby on Rails と似ている
それで、Rustは言語ランキングが1位になるのかも
並行プログラミングでは、Elixir。
100GB ぐらいのメモリで、5,000万個の小プロセスが稼働する
Ruby on Rails と似ている
898デフォルトの名無しさん
2022/08/01(月) 22:46:46.79ID:Ctxi9Kcc Elixirは大元のErlangの実行が中々愉快なことになってるんだけどもそれを継承してるんだっけ?
899デフォルトの名無しさん
2022/08/01(月) 23:02:32.84ID:6UjeNpN/ >>896
それらのプログラミング言語で労力が10倍も変わるなんてありえない
変わるとしてもそのなぜか一緒にしているC/C++とC#の差が大きい程度
自動的にメモリ解放してくれないC/C++ではその分だけ労力がかかる
もちろんC#は多少労力が楽な分だけ遅くなるため優れていることを意味するわけではない
それらのプログラミング言語で労力が10倍も変わるなんてありえない
変わるとしてもそのなぜか一緒にしているC/C++とC#の差が大きい程度
自動的にメモリ解放してくれないC/C++ではその分だけ労力がかかる
もちろんC#は多少労力が楽な分だけ遅くなるため優れていることを意味するわけではない
900デフォルトの名無しさん
2022/08/01(月) 23:10:21.89ID:xcPFI+XD >>897
320GBのメモリーがあれば、国民一人一人にプロセスを与えられるね。
320GBのメモリーがあれば、国民一人一人にプロセスを与えられるね。
901デフォルトの名無しさん
2022/08/01(月) 23:11:24.47ID:xcPFI+XD >>899
いや、Rustなら10倍かかってもおかしくないでしょう。
いや、Rustなら10倍かかってもおかしくないでしょう。
902デフォルトの名無しさん
2022/08/01(月) 23:14:57.62ID:XSveJ/JR903デフォルトの名無しさん
2022/08/01(月) 23:16:39.89ID:xcPFI+XD キミは何でIDが変わるの?
904デフォルトの名無しさん
2022/08/01(月) 23:25:18.49ID:0OfTpNey 労力って使える人材探し始めてから完成するまでの時間でしょ?
Rust使える人を見つける時間考えたら、他の言語選んだ方が圧倒的に早くて安いよ
Rust使える人を見つける時間考えたら、他の言語選んだ方が圧倒的に早くて安いよ
905デフォルトの名無しさん
2022/08/01(月) 23:39:41.39ID:XSveJ/JR >>904
次世代言語スレでそれは意味のない話ですね
Rustも他の言語も使える普通の人にとって開発効率もその実行生産性も最も高い言語がRust
そしてRustコンパイラの親切さにより誰でもRustを使えるようになるところも大きなポイント
古き概念のみに固執して学習に失敗した人を除きみんなが学習に成功しています
次世代言語スレでそれは意味のない話ですね
Rustも他の言語も使える普通の人にとって開発効率もその実行生産性も最も高い言語がRust
そしてRustコンパイラの親切さにより誰でもRustを使えるようになるところも大きなポイント
古き概念のみに固執して学習に失敗した人を除きみんなが学習に成功しています
906デフォルトの名無しさん
2022/08/01(月) 23:39:51.69ID:zlIOq9vz オリジナルよりパクリの方が時間は短い
時刻はオリジナルの方が早い
時刻はオリジナルの方が早い
907デフォルトの名無しさん
2022/08/01(月) 23:43:41.81ID:QBiSvFw1908デフォルトの名無しさん
2022/08/01(月) 23:45:10.83ID:6UjeNpN/909デフォルトの名無しさん
2022/08/02(火) 00:00:32.68ID:4QK2QLWC あとメモリ効率ってそんなに大事なことなの?
OSや組み込みなど低レイヤーならわかるけど
高いコストを払ってまで得られる価値はないことが多いのでは?今までGC言語が流行ってきたわけだが?
むしろIOやCPUがボトルネックになる方が大半でメモリ効率がいいことによって恩恵が得られるケースってほとんどないのでは?
OSや組み込みなど低レイヤーならわかるけど
高いコストを払ってまで得られる価値はないことが多いのでは?今までGC言語が流行ってきたわけだが?
むしろIOやCPUがボトルネックになる方が大半でメモリ効率がいいことによって恩恵が得られるケースってほとんどないのでは?
910デフォルトの名無しさん
2022/08/02(火) 00:03:12.51ID:mFGD+3ik >>907
マジで知らんのか?
それはRustが新しい言語だから
Rustの大きな強みの並行プログラミングがまともに使えるようになったのが2019年から2020年にかけて
そしてその効率と実用性が幅広く確認されたためIT大手各社が共同でRust Foundationを設立したのが2021年
プログラム言語史上でも初めてIT大手各社が揃って共同で支持するほどの革命的な言語
マジで知らんのか?
それはRustが新しい言語だから
Rustの大きな強みの並行プログラミングがまともに使えるようになったのが2019年から2020年にかけて
そしてその効率と実用性が幅広く確認されたためIT大手各社が共同でRust Foundationを設立したのが2021年
プログラム言語史上でも初めてIT大手各社が揃って共同で支持するほどの革命的な言語
911デフォルトの名無しさん
2022/08/02(火) 00:05:28.81ID:mFGD+3ik912デフォルトの名無しさん
2022/08/02(火) 00:13:54.99ID:4QK2QLWC GC言語の方が生産性高いのでは?
GC言語より生産性が高い根拠は?
異常に速いとか言っておきながら単語カウントとかその辺にあるベンチマークでGoやNimに普通に負けることがあるのはなんで?
大手が採用しているのはあくまでもOS開発など低レイヤー用途でグーグルとかはサーバーサイドがGoで書かれているようだけどそれをRustにするという話はどこにも出ていないね
低レイヤー以外だとMetaとDiscordぐらいで日本でRust採用してる企業は特に存在しないね
グーグルトレンド見ればわかるようにRustは全然流行っていないな
GC言語より生産性が高い根拠は?
異常に速いとか言っておきながら単語カウントとかその辺にあるベンチマークでGoやNimに普通に負けることがあるのはなんで?
大手が採用しているのはあくまでもOS開発など低レイヤー用途でグーグルとかはサーバーサイドがGoで書かれているようだけどそれをRustにするという話はどこにも出ていないね
低レイヤー以外だとMetaとDiscordぐらいで日本でRust採用してる企業は特に存在しないね
グーグルトレンド見ればわかるようにRustは全然流行っていないな
913デフォルトの名無しさん
2022/08/02(火) 00:19:52.75ID:4QK2QLWC GoogleやMicrosoftはOSやカーネル開発でRustを採用することにしたらしいが
OSやカーネルやコンパイラだとかを開発しているエンジニアって全体の何%ぐらいだと思ってんの?
Rustは一部の数%程度の少数向けに向いているってのが事実だけど
ここにいるRust信者は他のあらゆるプログラミング用途でRustが最強で既存言語を置き換えていくとかほざいているわけだが
何の根拠もない妄想でしかないわ
適材適所って言葉を知らない無能
MetaとDiscord以外で採用している有名企業あげてみろや
OSやカーネルやコンパイラだとかを開発しているエンジニアって全体の何%ぐらいだと思ってんの?
Rustは一部の数%程度の少数向けに向いているってのが事実だけど
ここにいるRust信者は他のあらゆるプログラミング用途でRustが最強で既存言語を置き換えていくとかほざいているわけだが
何の根拠もない妄想でしかないわ
適材適所って言葉を知らない無能
MetaとDiscord以外で採用している有名企業あげてみろや
914デフォルトの名無しさん
2022/08/02(火) 00:25:19.06ID:/i6BuvyD ネットに嘘が多いのは、検査が足りないからじゃないかな
Rustコンパイラはある種の嘘を検査している
それが非効率だと思うなら嘘に寛容な効率化をやってみせろ
Rustコンパイラはある種の嘘を検査している
それが非効率だと思うなら嘘に寛容な効率化をやってみせろ
915デフォルトの名無しさん
2022/08/02(火) 00:28:37.12ID:mFGD+3ik916デフォルトの名無しさん
2022/08/02(火) 00:28:42.85ID:4QK2QLWC RustはGCがないからあらゆる面で最強で他のあらゆる言語を置き換える←妄言
RustはGCや手厚いランタイム環境が使えない、もしくは適さないようなシビアな要件で安全なプログラムを作成できるためC++を置き換えることがある←正しい
正しい理解をした上でRustを広めような
RustはGCや手厚いランタイム環境が使えない、もしくは適さないようなシビアな要件で安全なプログラムを作成できるためC++を置き換えることがある←正しい
正しい理解をした上でRustを広めような
917デフォルトの名無しさん
2022/08/02(火) 00:33:51.61ID:4QK2QLWC >>915
記事を見て言ってるわけだけど。記事の段階でGoに負けたのは事実でしょう
あとこれはベンチマークの一例ね。他にもネットで探せばRustが微妙な位置にいるのはよくあることだね。
そもそもハッシュが遅いだとかで最適化したバージョンが記事で使われてないのは何故だか考えてみようね
あとRustはNimにも負けているね。GC言語だけど。。
記事を見て言ってるわけだけど。記事の段階でGoに負けたのは事実でしょう
あとこれはベンチマークの一例ね。他にもネットで探せばRustが微妙な位置にいるのはよくあることだね。
そもそもハッシュが遅いだとかで最適化したバージョンが記事で使われてないのは何故だか考えてみようね
あとRustはNimにも負けているね。GC言語だけど。。
918デフォルトの名無しさん
2022/08/02(火) 00:38:10.10ID:4QK2QLWC CPU処理だけのプログラムでもGoに負けることがあるのだから
低レイヤー以外の用途でRustを採用する必要なんか皆無であることがよくわかるね
低レイヤー以外の用途でRustを採用する必要なんか皆無であることがよくわかるね
919デフォルトの名無しさん
2022/08/02(火) 00:40:03.84ID:4QK2QLWC ちなみに俺はRustアンチじゃないからね
何でもかんでもRustが最強!GC言語はゴミで駆逐されるとかほざいてて
Rust使ってる自分に酔ってて他人にマウント取るだけが生きがいのゴミが嫌いなだけだね
何でもかんでもRustが最強!GC言語はゴミで駆逐されるとかほざいてて
Rust使ってる自分に酔ってて他人にマウント取るだけが生きがいのゴミが嫌いなだけだね
920デフォルトの名無しさん
2022/08/02(火) 00:40:19.24ID:A0k69qij 全言語の中でCに次いでRustが最速となったプログラムのコード>>602を見てみよう
どの言語のプログラマーであってもすぐに理解できるほど抽象度が高く平易で分かりやすいコードとなっている
つまりRustを学習すれば誰もが分かりやすくてコード&C並みに高速を両立するプログラムを書けるようになることを意味している
どの言語のプログラマーであってもすぐに理解できるほど抽象度が高く平易で分かりやすいコードとなっている
つまりRustを学習すれば誰もが分かりやすくてコード&C並みに高速を両立するプログラムを書けるようになることを意味している
921デフォルトの名無しさん
2022/08/02(火) 01:56:40.26ID:+AA3LPDF このままRustでまるまる1スレッド潰すのか
922デフォルトの名無しさん
2022/08/02(火) 02:07:05.35ID:cWws5nRf 俺はRustでStringをcloneしまくるコード書いちゃうからなぁ
あんま速くないかも
あんま速くないかも
923デフォルトの名無しさん
2022/08/02(火) 02:24:14.36ID:u5Pbv834 クソコードがそもそも詠唱できない時点で
クソコードのおもりをさせられるエンジニアがいなくなる
このことは重要
クソコードのおもりをさせられるエンジニアがいなくなる
このことは重要
924デフォルトの名無しさん
2022/08/02(火) 05:52:39.70ID:LaxCL9ek RustはDropbox、Cloudflare、IBM、トヨタなども使っているね。
コストってなんのコストを指しているかわからないけど、個人的にはシステムの生涯でかかるコストは他言語より安く済むと思うよ。
コストってなんのコストを指しているかわからないけど、個人的にはシステムの生涯でかかるコストは他言語より安く済むと思うよ。
925デフォルトの名無しさん
2022/08/02(火) 06:21:12.68ID:9HUaTRvZ 基本的にRustは遅いよね。
実用的なソフトウェアを作るには10倍の労力がいるし。
ベンチマーク特化型言語なのに、ベンチマークも遅いし。
実用的なソフトウェアを作るには10倍の労力がいるし。
ベンチマーク特化型言語なのに、ベンチマークも遅いし。
926デフォルトの名無しさん
2022/08/02(火) 08:10:44.50ID:boBO3Fux >>915の認識は微妙に間違っていて、simpleは標準ライブラリにこだわって遅いhashmapを使ってて、バッファが噛んでないのはoptimizeの方。
927デフォルトの名無しさん
2022/08/02(火) 09:29:37.95ID:PkkC7YEU はいはいRust最強最強
とりあえず現時点で最強ってことらしいから、スレタイから外していいし、どっかいってくれ
次世代言語のスレだから既に最強のRustを語る必要はない
とりあえず現時点で最強ってことらしいから、スレタイから外していいし、どっかいってくれ
次世代言語のスレだから既に最強のRustを語る必要はない
928デフォルトの名無しさん
2022/08/02(火) 10:16:23.49ID:QkVXmXpB929デフォルトの名無しさん
2022/08/02(火) 10:44:19.34ID:zk210DB0 スピードなんかどうでもよくてメモリが安全なのがいいんだよ
930デフォルトの名無しさん
2022/08/02(火) 11:02:56.88ID:MHrspXIN 狭義のGC あり言語の欠点はGC走って処理が引っ掛かるところかと。
931デフォルトの名無しさん
2022/08/02(火) 11:04:01.76ID:SwmbA253932デフォルトの名無しさん
2022/08/02(火) 12:08:32.96ID:Xz99VLOB GC有りでPythonくらい所有権とか気にせず雑に扱えて、且つRustの効率性を実現できれば、次世代と呼べるのではないかな?
933デフォルトの名無しさん
2022/08/02(火) 12:21:54.19ID:Z7Qybw/O Nimのoptimize版のコードかなり頑張ってるのにC/C++/Rustより倍くらい遅いのはGC言語の限界なのかな
934デフォルトの名無しさん
2022/08/02(火) 12:54:54.89ID:aHuzTsGL tauriってどうなの?価値ある?
935デフォルトの名無しさん
2022/08/02(火) 13:01:21.17ID:YfIh+LzH さあ、Electronで十分だと思うが
936デフォルトの名無しさん
2022/08/02(火) 14:25:29.92ID:T6r67EvT スレタイにRustはないのにここで暴れる理由がわからん
Rustスレで啓蒙活動してればよろしい
Rustスレで啓蒙活動してればよろしい
938デフォルトの名無しさん
2022/08/02(火) 16:47:02.67ID:h0wFySH1 >>937
スレのルールに従えよ。
スレのルールに従えよ。
939デフォルトの名無しさん
2022/08/02(火) 17:38:35.92ID:AUryLawh > スレタイ(順番はRedMonk準拠)以外の言語もok
>
> ※ Rustは現世代最強言語なので除外します
※ Rustは現世代最強言語なので(話題にして良い言語から)除外します
※ Rustは現世代最強言語なので(スレタイから)除外します
どっち?
>
> ※ Rustは現世代最強言語なので除外します
※ Rustは現世代最強言語なので(話題にして良い言語から)除外します
※ Rustは現世代最強言語なので(スレタイから)除外します
どっち?
940デフォルトの名無しさん
2022/08/02(火) 18:09:03.75ID:67ChPJTw NimはGC言語って言われるけど、スタック上にobject(C++のstruct/class相当)をおけるし、コンパイル時にサイズが決まれば配列もスタック上における。
objectの内容が配列や親objectのメモリ上に連続して配置することも可能。
C++言語のように自由にスタック上にデータを置くことが可能。
継承使いたいときとか一つのオブジェクトを複数のreferenceから参照したいときにref objectを使うんだけどこれはヒープに確保されGCで管理される。
Nimは複数のGCを選べるんだけど、--mm:arcオプションをつけるとRustのRcのような参照カウント方式でヒープが管理される。
--mm:orcオプションを使うと循環参照があってもメモリを解放できるようにした参照カウント方式が使われる。
詳しくは
https://nim-lang.org/docs/mm.html
objectの内容が配列や親objectのメモリ上に連続して配置することも可能。
C++言語のように自由にスタック上にデータを置くことが可能。
継承使いたいときとか一つのオブジェクトを複数のreferenceから参照したいときにref objectを使うんだけどこれはヒープに確保されGCで管理される。
Nimは複数のGCを選べるんだけど、--mm:arcオプションをつけるとRustのRcのような参照カウント方式でヒープが管理される。
--mm:orcオプションを使うと循環参照があってもメモリを解放できるようにした参照カウント方式が使われる。
詳しくは
https://nim-lang.org/docs/mm.html
941デフォルトの名無しさん
2022/08/02(火) 18:25:25.25ID:VFwTK1q5 >>940
スタックに置けるのは当たり前だからそこはおいといて
[1] 継承を使うだけでヒープになるのは厳しい
[2] ヒープになるだけでGCとなるのは厳しい
[3] C++とRustで参照カウンタが使われる状況になるのはもっとレアケースのみ
中途半端な立ち位置だからNimは厳しい
スタックに置けるのは当たり前だからそこはおいといて
[1] 継承を使うだけでヒープになるのは厳しい
[2] ヒープになるだけでGCとなるのは厳しい
[3] C++とRustで参照カウンタが使われる状況になるのはもっとレアケースのみ
中途半端な立ち位置だからNimは厳しい
942デフォルトの名無しさん
2022/08/02(火) 18:41:12.53ID:6yaBS9ru943デフォルトの名無しさん
2022/08/02(火) 18:42:42.88ID:3Auutz71 Rustで実用的なソフトウェアを書くのは大変骨が折れる。
944デフォルトの名無しさん
2022/08/02(火) 18:45:25.03ID:3Auutz71 厨がウザいからRustは除外します(本音)。
945デフォルトの名無しさん
2022/08/02(火) 19:45:31.74ID:Ibj6PLNd valgrindもまともに使ったことなさげなバカが偉そうにしてるの見ると腹が立つってのはあるわな。
946デフォルトの名無しさん
2022/08/02(火) 19:49:07.82ID:3Auutz71 C/C++で書かれたOSの上で動作してるのに、大言壮語も甚だしいという意見もある。
947デフォルトの名無しさん
2022/08/02(火) 19:56:24.89ID:KsV0Heuv システムプログラミング(笑)に特化してるってんならとっととRust製のOS作れよな
948デフォルトの名無しさん
2022/08/02(火) 20:22:23.89ID:49BZsXJW RustでOSか。
一応 Linux は Rust で書いたソースも受け付けるようになったらしいな。ベースがCなのは変えないそうだが。
一応 Linux は Rust で書いたソースも受け付けるようになったらしいな。ベースがCなのは変えないそうだが。
949デフォルトの名無しさん
2022/08/02(火) 20:56:39.03ID:VFwTK1q5950デフォルトの名無しさん
2022/08/02(火) 21:03:37.39ID:67ChPJTw >>941
ヒープ使わずに継承を使うことはできるけどOOPするときは派生オブジェクトを基底オブジェクトのポインタ経由で使うことが多いでしょ。
QtのサンプルコードでGUI関係のクラスはnewしてヒープに確保している。
https://doc.qt.io/qt-6/qtwidgets-widgets-calculator-example.html
https://nim-lang.org/docs/mm.html
に書いてあるけど参照カウントが不要な場合はコンパイラが自動的に最適化してくれる。
そのおかげでunique_ptrとshared_ptrを使いわけるようなことは考えずに済む。
参照カウンタがどれだけ必要になるかは場合によりけり。
C++やRustでRcが不要なコードならたぶんNimでもref objectを使わずにコードを書けるよ。
ヒープ使わずに継承を使うことはできるけどOOPするときは派生オブジェクトを基底オブジェクトのポインタ経由で使うことが多いでしょ。
QtのサンプルコードでGUI関係のクラスはnewしてヒープに確保している。
https://doc.qt.io/qt-6/qtwidgets-widgets-calculator-example.html
https://nim-lang.org/docs/mm.html
に書いてあるけど参照カウントが不要な場合はコンパイラが自動的に最適化してくれる。
そのおかげでunique_ptrとshared_ptrを使いわけるようなことは考えずに済む。
参照カウンタがどれだけ必要になるかは場合によりけり。
C++やRustでRcが不要なコードならたぶんNimでもref objectを使わずにコードを書けるよ。
951デフォルトの名無しさん
2022/08/02(火) 21:35:54.41ID:zaqp+NKw NimはObjectとref Objectを区別して扱わなきゃいけない時点で既に不便。
例えばRustでもそんな区別はなく、
スタック上のデータのみで完結しているオブジェクトなのか、
ヒープ上のデータを付随するオブジェクトなのか、
プログラマーはどちらなのか意識せず区別せずとも自動的に安全にメモリ解放される。
例えばRustでもそんな区別はなく、
スタック上のデータのみで完結しているオブジェクトなのか、
ヒープ上のデータを付随するオブジェクトなのか、
プログラマーはどちらなのか意識せず区別せずとも自動的に安全にメモリ解放される。
952デフォルトの名無しさん
2022/08/02(火) 22:18:46.88ID:3Auutz71 CRTPでおk。
953デフォルトの名無しさん
2022/08/02(火) 22:24:30.00ID:+AA3LPDF 次スレのスレタイはNim Zig Pony Carbon Gleamあたりでいいっすか?
954デフォルトの名無しさん
2022/08/02(火) 22:40:59.73ID:A0k69qij >>945
それ本気で言ってたら笑われる
Valgrind使って実行時にエラー検出と
Rustでコンパイル時にエラー検出の
現在どちらをとるべきか100%答えは出ている
RustでValgrindを使うことも稀にあるが
大半がC/C++とのFFIがらみでありC/C++が足を引っ張っている
それ本気で言ってたら笑われる
Valgrind使って実行時にエラー検出と
Rustでコンパイル時にエラー検出の
現在どちらをとるべきか100%答えは出ている
RustでValgrindを使うことも稀にあるが
大半がC/C++とのFFIがらみでありC/C++が足を引っ張っている
955デフォルトの名無しさん
2022/08/02(火) 23:38:50.10ID:yShK5RND >>953
ウィ
ウィ
956デフォルトの名無しさん
2022/08/02(火) 23:51:57.52ID:zk210DB0 >>948
だってRustってめっちゃ遅いから
だってRustってめっちゃ遅いから
957デフォルトの名無しさん
2022/08/02(火) 23:58:05.26ID:zaqp+NKw RustならCとほとんど変わらない最高速
開発効率も上がる
開発効率も上がる
958デフォルトの名無しさん
2022/08/03(水) 07:24:58.64ID:EBW1aqTx んなわけない。
959デフォルトの名無しさん
2022/08/04(木) 06:52:08.63ID:hgV/iHpj Rust保守できなくて他の言語に書き直す案件多すぎじゃね?
960デフォルトの名無しさん
2022/08/04(木) 07:38:09.36ID:YMWE04jW961デフォルトの名無しさん
2022/08/04(木) 08:27:29.63ID:czcxYRnn 貶めたいだけだから、あげられないと思う
962デフォルトの名無しさん
2022/08/04(木) 09:05:31.59ID:MbWp6BMN963デフォルトの名無しさん
2022/08/04(木) 09:35:45.18ID:jqJhSpad >>960
すみません、嘘いいいました
すみません、嘘いいいました
964デフォルトの名無しさん
2022/08/04(木) 09:44:49.51ID:hgV/iHpj965デフォルトの名無しさん
2022/08/04(木) 09:53:00.83ID:YMWE04jW >>964
どう見てもrustからの移植よりrustへの移植の話の方が多くないか?
どう見てもrustからの移植よりrustへの移植の話の方が多くないか?
966デフォルトの名無しさん
2022/08/04(木) 10:33:52.33ID:qcYVxnZx 今まで長年色々と携わってきた一般的な話として
移植するほど価値のあるものは滅多にないのと
同じ物を長く使い続けるよりある段階で設計から作り直した方が効率が良いのと
その時は古い言語を引きずらずにRustやKotlinやSwiftなど改善された良い言語を採用した方が効率良い
移植するほど価値のあるものは滅多にないのと
同じ物を長く使い続けるよりある段階で設計から作り直した方が効率が良いのと
その時は古い言語を引きずらずにRustやKotlinやSwiftなど改善された良い言語を採用した方が効率良い
967デフォルトの名無しさん
2022/08/04(木) 10:54:52.94ID:GwRVgwm4 でもRustを使えばメモリは安心安全だよ
968デフォルトの名無しさん
2022/08/04(木) 11:32:27.68ID:hgV/iHpj 移植と逆移植の需要が噛み合って無限の雇用を創出するわけだ
969デフォルトの名無しさん
2022/08/04(木) 12:34:53.02ID:rpL8+iTc >>965
既存コードの数が違うんだから当然だろ。
既存コードの数が違うんだから当然だろ。
970デフォルトの名無しさん
2022/08/04(木) 13:00:46.06ID:pLEfRi/j 保守できなくて書き直しで言うと JS/TypeScript 界隈が深刻なんじゃねえの?
未成熟なモジュールシステム、幅広い要件、多彩すぎる処理系、本来の目的と違う使い方をされるView層(DOM)、流行りの影響を受けやすいドメイン。初学者に人気がある。
まぁ、言語側で頑張れることも限界があるけど…。
未成熟なモジュールシステム、幅広い要件、多彩すぎる処理系、本来の目的と違う使い方をされるView層(DOM)、流行りの影響を受けやすいドメイン。初学者に人気がある。
まぁ、言語側で頑張れることも限界があるけど…。
971デフォルトの名無しさん
2022/08/04(木) 13:17:32.31ID:YMWE04jW >>969
それはそうだが
> Rust保守できなくて他の言語に書き直す案件多すぎじゃね?
って吠えてた人がいるからもっとあるのかと思ったら意外にショボくてワロタ
よくこんなものをドヤ顔で出せるもんだなw
それはそうだが
> Rust保守できなくて他の言語に書き直す案件多すぎじゃね?
って吠えてた人がいるからもっとあるのかと思ったら意外にショボくてワロタ
よくこんなものをドヤ顔で出せるもんだなw
972デフォルトの名無しさん
2022/08/04(木) 20:50:36.26ID:+PIU9Mos でもPHPの方が速いよね
973デフォルトの名無しさん
2022/08/04(木) 20:54:22.20ID:9TNfUmNd npmは反面教師としてめちゃくちゃ活躍した
後発のパッケージツールはみんな参考にしてる
後発のパッケージツールはみんな参考にしてる
974デフォルトの名無しさん
2022/08/04(木) 22:46:04.19ID:RbD+Gsia プロジェクト毎に切り替えてインストールする、
Ruby のBundler を真似て、npm/yarn が出来た
Ruby のBundler を真似て、npm/yarn が出来た
975デフォルトの名無しさん
2022/08/04(木) 23:00:37.24ID:mEx9pPO3 何さらっと嘘言っているんだよw
パッケージ管理ツールなんて昔からあるのに
パッケージ管理ツールなんて昔からあるのに
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
0.180 1.597 3.219 6.267 3.1MB Rust@5ch res >>602
Ryzen9 5900X windows11
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
0.180 1.597 3.219 6.267 3.1MB Rust@5ch res >>602
Ryzen9 5900X windows11
977976
2022/08/05(金) 07:37:51.09ID:BZGh0CoX データサイズを大きくしたら結構景色が変わったよ
もともとのサイズは左端のx10ね
もともとのサイズは左端のx10ね
978976
2022/08/05(金) 07:44:17.90ID:BZGh0CoX caller hashはoptimized.cと同じようにメインループでhash計算を済ませておいてhashテーブル関数に渡す用にしたもの
これ結構効果的だった
これ結構効果的だった
979デフォルトの名無しさん
2022/08/05(金) 07:49:10.83ID:WXp5Dd4L こちらでもGoがC++やRustよりも遅い結果しか出ないのだが
GoがC++やRustよりも速い結果になる人は何が違うのだろう?バージョン?CPU?計測方法?
GoがC++やRustより速くなるのは他でも見かけないから何らか別の理由があるはず
GoがC++やRustよりも速い結果になる人は何が違うのだろう?バージョン?CPU?計測方法?
GoがC++やRustより速くなるのは他でも見かけないから何らか別の理由があるはず
980976
2022/08/05(金) 07:50:28.70ID:BZGh0CoX rustはよくわからないので、caller hash版は大先生にお願いしたいです
Mem:
メモリ使用量はタスクマネージャーでの表示です。cat/rg/ugrepは早すぎて見えませんでした
x10~x400で違いはなかったです
Mem:
メモリ使用量はタスクマネージャーでの表示です。cat/rg/ugrepは早すぎて見えませんでした
x10~x400で違いはなかったです
981デフォルトの名無しさん
2022/08/05(金) 07:54:28.24ID:WXp5Dd4L >>978
それは専用プログラムでない限りプログラミングでやってはいけない行為
単語を渡すだけのインタフェースになっているべきであり、その利用側はハッシュ関数が何かを知ってはいけない
さらに、そのような逸脱した最適化アルゴリズムを特定の言語にだけ適用しても、言語間の比較とならない
それは専用プログラムでない限りプログラミングでやってはいけない行為
単語を渡すだけのインタフェースになっているべきであり、その利用側はハッシュ関数が何かを知ってはいけない
さらに、そのような逸脱した最適化アルゴリズムを特定の言語にだけ適用しても、言語間の比較とならない
982デフォルトの名無しさん
2022/08/05(金) 07:58:44.14ID:Zs6c3yJt 次世代言語27 Nim Zig Rust Carbon
983デフォルトの名無しさん
2022/08/05(金) 08:03:18.30ID:caRFuKmx 要はアルゴリズムが大事で言語の差異はスクリプト言語でもない限りどうでもいいってことだろ
もうこの話は終わりでいいよ
もうこの話は終わりでいいよ
984デフォルトの名無しさん
2022/08/05(金) 08:06:44.88ID:8m5I520h アルゴリズムが同じならばGoが常に遅い
なので今回GoはイカサマをしたらC++/Rustより速くなったという話
なので今回GoはイカサマをしたらC++/Rustより速くなったという話
985デフォルトの名無しさん
2022/08/05(金) 08:12:34.92ID:caRFuKmx Goはパラレル版もリポジトリに置いてあるけど当然そっちの方がRustより早いぞ
Rustも並列処理すれば速いんだろうけど
ということで大事なのはアルゴリズムで言語差はわりとどうでもいいね
Rustがアピールするべきなのはパフォーマンスというよりは低ランタイムコストでメモリ安全ってとこじゃないの
当然コストが高いわけでそれに見合うほどのパフォーマンスが必ずしも得られるわけではない
パフォーマンスを改善するには言語を変えて作り直すより、アルゴリズムを改善したり、並行並列処理に切り替えたりする方が効果的
Rustも並列処理すれば速いんだろうけど
ということで大事なのはアルゴリズムで言語差はわりとどうでもいいね
Rustがアピールするべきなのはパフォーマンスというよりは低ランタイムコストでメモリ安全ってとこじゃないの
当然コストが高いわけでそれに見合うほどのパフォーマンスが必ずしも得られるわけではない
パフォーマンスを改善するには言語を変えて作り直すより、アルゴリズムを改善したり、並行並列処理に切り替えたりする方が効果的
986デフォルトの名無しさん
2022/08/05(金) 08:15:37.58ID:brBAgkMt その0.1秒で終わる処理ですら同じ条件ならばGoが遅いけど
現実にはサーバーからアプリまでそれよりはるかに長い時間使われる
そしてGCが何度も起こりGoの遅さが致命的になる
現実にはサーバーからアプリまでそれよりはるかに長い時間使われる
そしてGCが何度も起こりGoの遅さが致命的になる
987デフォルトの名無しさん
2022/08/05(金) 08:17:56.43ID:m/sE4zJr988デフォルトの名無しさん
2022/08/05(金) 08:18:55.11ID:caRFuKmx 次スレはワッチョイありで立ててくれ
Rust盲信者がIDころころ変えるので
Rust盲信者がIDころころ変えるので
989デフォルトの名無しさん
2022/08/05(金) 08:25:55.99ID:H5hHfEm1990デフォルトの名無しさん
2022/08/05(金) 08:29:18.89ID:w1fJ4NWZ 元のGoブログの人を含めて全員おかしい
アルゴリズムを揃えないベンチマークは何も意味を持たない
アルゴリズムを揃えないベンチマークは何も意味を持たない
991デフォルトの名無しさん
2022/08/05(金) 08:56:59.64ID:T6EdcM/7 >>982
rustはもう外せよ
rustはもう外せよ
992デフォルトの名無しさん
2022/08/05(金) 09:25:07.37ID:caRFuKmx そんなにRustがあらゆるプログラムでパフォーマンス、生産性が優れているなら
なんで頭のいいエンジニア達はわざわざRustを使ってDenoっていうランタイム作ってんの???
GCがあるとRust狂信者によるとWebサーバーでもクリティカルに影響が出てしまうらしいけど
なんでGCのないRustで狂信者曰くあらゆる面でゴミなGCありのDeno作ってんのよ
なんで頭のいいエンジニア達はわざわざRustを使ってDenoっていうランタイム作ってんの???
GCがあるとRust狂信者によるとWebサーバーでもクリティカルに影響が出てしまうらしいけど
なんでGCのないRustで狂信者曰くあらゆる面でゴミなGCありのDeno作ってんのよ
993デフォルトの名無しさん
2022/08/05(金) 09:40:18.52ID:h+76NvX5 >>978
その通りだがその時点でこのベンチマークが現実離れした意味のないものであることを意味している
以前から指摘が出ているように、このベンチマークの実行時間のほとんどは単語カウントに費やされていて、だからこそそのハッシュ計算のオプティマイズで大きく改善される
この筋の悪いベンチマークをどうしても行なうならば、最低限アルゴリズムとテーブルサイズなど条件を揃えるべき
現状では意味のない比較となっている
その通りだがその時点でこのベンチマークが現実離れした意味のないものであることを意味している
以前から指摘が出ているように、このベンチマークの実行時間のほとんどは単語カウントに費やされていて、だからこそそのハッシュ計算のオプティマイズで大きく改善される
この筋の悪いベンチマークをどうしても行なうならば、最低限アルゴリズムとテーブルサイズなど条件を揃えるべき
現状では意味のない比較となっている
994デフォルトの名無しさん
2022/08/05(金) 09:43:12.76ID:/hLfNpmA995デフォルトの名無しさん
2022/08/05(金) 09:45:30.76ID:oRWix6dW996デフォルトの名無しさん
2022/08/05(金) 09:48:57.07ID:AYAQMvzY 【次スレ】
次世代言語27 TypeScript Swift Go Kotlin Rust Nim
https://mevius.5ch.net/test/read.cgi/tech/1659655598/
【前スレ】
次世代言語25 TypeScript Swift Go Kotlin Rust Nim
https://mevius.5ch.net/test/read.cgi/tech/1650185555/
次世代言語27 TypeScript Swift Go Kotlin Rust Nim
https://mevius.5ch.net/test/read.cgi/tech/1659655598/
【前スレ】
次世代言語25 TypeScript Swift Go Kotlin Rust Nim
https://mevius.5ch.net/test/read.cgi/tech/1650185555/
レス数が950を超えています。1000を超えると書き込みができなくなります。
ニュース
- 中国国連大使「日本が中国に武力行使すると脅しをかけたのは初めて」 国連事務総長に書簡★4 [♪♪♪★]
- 【芸能】44歳・池脇千鶴、激変ぶりにネット衝撃 「まるで別人…」「変化が凄い!!」の声 [冬月記者★]
- なぜ立花孝志氏の言葉は信じられたのか…"異例の逮捕"が浮き彫りにした「SNSの危険な病理」 [ぐれ★]
- 中国「国連安保理の許可なしに日本攻撃可能」 Xで旧敵国条項に言及… ★15 [BFU★]
- 竹中平蔵氏、万博は大成功だったと持論 批判していた人々にチクリ「反省の弁の一つも聞きたい」 [バイト歴50年★]
- 【🐼】パンダ、日本で会えなくなる? 中国との関係悪化で不安の声 ★2 [ぐれ★]
- 中国から旅行客来なくてざまあwwとかいう論調あるけど
- 中国のプロパガンダ、もうめちゃくちゃ「沖縄人は在日米兵にしいたげられているが日本政府は対応しない。もはや日本の領土とはいえない」 [329329848]
- 砂糖しろし・あましっていう芸名
- 俺、明日から旅行だ。親知らずいるだろうな。
- 中国「ごめん、色々やりすぎた謝るから和解してほしい」高市首相「舐めてんの?」 [834922174]
- 【速報】甘利、元上司の首を包丁で刺す [402859164]
