スレタイ以外の言語もok
前スレ
次世代言語28 TypeScript Swift Go Kotlin Rust Nim
https://mevius.5ch.net/test/read.cgi/tech/1661739736/
探検
次世代言語29 TypeScript Swift Go Kotlin Rust Nim
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2022/09/17(土) 19:05:49.83ID:6v3irpfN564デフォルトの名無しさん
2022/09/29(木) 02:20:18.96ID:y6wWIkPL565デフォルトの名無しさん
2022/09/29(木) 04:16:41.47ID:HJy6mZaS 複オジ相手しても時間の無駄だぞ
566デフォルトの名無しさん
2022/09/29(木) 04:19:15.74ID:4N/DzY+H567デフォルトの名無しさん
2022/09/29(木) 08:16:59.79ID:2DEJTfP6568デフォルトの名無しさん
2022/09/29(木) 08:35:25.13ID:l+nUKPCx569デフォルトの名無しさん
2022/09/29(木) 08:50:17.22ID:wt+vHEcs ホントRustをわざと嫌われるように仕向けてるように見えるよなあ
570デフォルトの名無しさん
2022/09/29(木) 10:17:24.11ID:oclOsxMu Rustはなぜ開発者に愛されているのか、そして「人を選ぶ」理由とは? 実案件でRustを採用するゆめみに聞く
https://codezine.jp/article/detail/16416
https://codezine.jp/article/detail/16416
571デフォルトの名無しさん
2022/09/29(木) 11:33:20.73ID:ixRuqvEN まずは既存言語の延長として借用ベースでコードを書いてから
適切にムーブもするというスタイルをお勧めしたいね
本来のRustのスタイルとしてはムーブベースで考えるべきなのだけど
ハードルがかなり高いと思う
(C++のムーブコンストラクタやムーブ代入演算子を使いまくってた俺クラスの人間じゃないと無理)
借用の乱用でライフタイムの指定が嫌になったころにムーブを覚える
これこそアハ体験
適切にムーブもするというスタイルをお勧めしたいね
本来のRustのスタイルとしてはムーブベースで考えるべきなのだけど
ハードルがかなり高いと思う
(C++のムーブコンストラクタやムーブ代入演算子を使いまくってた俺クラスの人間じゃないと無理)
借用の乱用でライフタイムの指定が嫌になったころにムーブを覚える
これこそアハ体験
572デフォルトの名無しさん
2022/09/29(木) 11:38:34.00ID:cdfoharm573デフォルトの名無しさん
2022/09/29(木) 12:05:38.59ID:wt+vHEcs 毎回ID変えて書き込む理由って結局何なの?
574デフォルトの名無しさん
2022/09/29(木) 13:45:27.89ID:cdfoharm 自分の名刺に知らない会社の名前が書いてある理由は?
575デフォルトの名無しさん
2022/09/29(木) 13:48:46.01ID:c7o9QpKC Rust初心者なのになぜ強がって墓穴を掘りたがるのか
複オジ病の心理が理解できん
複オジ病の心理が理解できん
576デフォルトの名無しさん
2022/09/29(木) 14:01:28.67ID:uqGHlXBC >>575
承認欲求だろ
他で承認されることがないから
匿名掲示板で嘘ついても虚勢を張ってでも
承認してもらいたくてしょうがない心理状態
子供が親に褒めてもらおうと嘘をつくのと同じ
大人でそれが常態化してれば病気だよね
承認欲求だろ
他で承認されることがないから
匿名掲示板で嘘ついても虚勢を張ってでも
承認してもらいたくてしょうがない心理状態
子供が親に褒めてもらおうと嘘をつくのと同じ
大人でそれが常態化してれば病気だよね
577デフォルトの名無しさん
2022/09/29(木) 14:30:58.29ID:v+CEiWWO578デフォルトの名無しさん
2022/09/29(木) 17:55:07.76ID:BEcK0oxF579デフォルトの名無しさん
2022/09/30(金) 16:19:35.52ID:GviXnHhi ファミコンで動作するGUI付きOS「NESOS」が爆誕
2022年09月30日 11時06分
ファミリーコンピュータ上で動作するGUI付きのOS「NESOS」が開発されました。
NESOSではタスクバー付きのデスクトップ画面を表示したり、デスクトップ上のアイコンを自由に並び替えたり、テキストの編集を実行したりできます。
デスクトップ上のアイコンは自由に並び替え可能で、タスクバーにファイルやアプリを配置することもできます。
テキストエディタでは、ファミリーベーシック用のキーボードを使ってアルファベットと各種記号を入力可能。
NESOSは無料配布されており、公式ページのダウンロードリンクからダウンロード可能です。
https://gigazine.net/news/20220930-family-computer-nesos/
2022年09月30日 11時06分
ファミリーコンピュータ上で動作するGUI付きのOS「NESOS」が開発されました。
NESOSではタスクバー付きのデスクトップ画面を表示したり、デスクトップ上のアイコンを自由に並び替えたり、テキストの編集を実行したりできます。
デスクトップ上のアイコンは自由に並び替え可能で、タスクバーにファイルやアプリを配置することもできます。
テキストエディタでは、ファミリーベーシック用のキーボードを使ってアルファベットと各種記号を入力可能。
NESOSは無料配布されており、公式ページのダウンロードリンクからダウンロード可能です。
https://gigazine.net/news/20220930-family-computer-nesos/
580デフォルトの名無しさん
2022/09/30(金) 18:09:21.49ID:ehwOVJGt 最近の流行りが静的型付けと型付きラムダ系FPからの便利機能輸入だから逆風だけど、雑に書くのに向いてる言語ってなんだろうね
Nimはかなり書き味意識してるって話だし、ベタッと実装するならGolangは向いてると思ってる
Nimはかなり書き味意識してるって話だし、ベタッと実装するならGolangは向いてると思ってる
581デフォルトの名無しさん
2022/09/30(金) 18:32:32.92ID:5s+XxWyj 開発環境も含めてならC#は雑に書くのに向いてると感じたな
最近のバージョンだとクラスやmainメソッドを省いてスクリプト言語みたいに書けるし、IDEの補助が神がかってるから迷わずに書けてミスしにくい
まあ書き味も大事だが、雑に書く場合は極力テストの手間も抑えたいから、ミスしないことは超重要
最近のバージョンだとクラスやmainメソッドを省いてスクリプト言語みたいに書けるし、IDEの補助が神がかってるから迷わずに書けてミスしにくい
まあ書き味も大事だが、雑に書く場合は極力テストの手間も抑えたいから、ミスしないことは超重要
582デフォルトの名無しさん
2022/09/30(金) 21:42:44.42ID:e4s4we75 型推論できる?
583デフォルトの名無しさん
2022/10/01(土) 09:46:02.05ID:GWYjbPGr C#はF#みたいにネイティブでスクリプト実行できるようになった?
584デフォルトの名無しさん
2022/10/01(土) 09:50:20.55ID:TxHdfIOV nodeとgoとrustで/helloを受け取ったら、hello worldと返すだけのAPIを立ててベンチマークしたんだけど何でここまで差が出るかわかる人いる?30倍も違うんだけど
12スレッドのwsl linuxだけどtaskset -c 1で1コアに制限しても
Goでは 36345.50rps avg102.03ms, Rustでは 82382.92rps avg43.57ms と依然として差があるんだが
シンプルなAPIでもここまで差が出るんだから、Nodeは論外ってことなのかな
コード: https://pastebin.com/cWdaC2rZ
wrkを使用
$ wrk -c 4000 -d 5 http://localhost:3000/hello
node (express)
Thread Stats Avg Stdev Max +/- Stdev
Latency 466.94ms 73.50ms 669.37ms 81.57%
Req/Sec 4.09k 678.72 4.82k 82.98%
38284 requests in 5.07s, 8.73MB read
Requests/sec: 7547.73
Transfer/sec: 1.72MB
go (net/http)
Latency 8.72ms 5.33ms 102.98ms 96.17%
Req/Sec 122.50k 6.37k 135.10k 69.57%
1163747 requests in 5.10s, 144.28MB read
Requests/sec: 228242.97
Transfer/sec: 28.30MB
rust (active-web)
Latency 8.77ms 3.15ms 31.07ms 76.16%
Req/Sec 115.76k 18.13k 156.46k 62.22%
1085310 requests in 5.08s, 133.52MB read
Requests/sec: 213464.53
Transfer/sec: 26.26MB
12スレッドのwsl linuxだけどtaskset -c 1で1コアに制限しても
Goでは 36345.50rps avg102.03ms, Rustでは 82382.92rps avg43.57ms と依然として差があるんだが
シンプルなAPIでもここまで差が出るんだから、Nodeは論外ってことなのかな
コード: https://pastebin.com/cWdaC2rZ
wrkを使用
$ wrk -c 4000 -d 5 http://localhost:3000/hello
node (express)
Thread Stats Avg Stdev Max +/- Stdev
Latency 466.94ms 73.50ms 669.37ms 81.57%
Req/Sec 4.09k 678.72 4.82k 82.98%
38284 requests in 5.07s, 8.73MB read
Requests/sec: 7547.73
Transfer/sec: 1.72MB
go (net/http)
Latency 8.72ms 5.33ms 102.98ms 96.17%
Req/Sec 122.50k 6.37k 135.10k 69.57%
1163747 requests in 5.10s, 144.28MB read
Requests/sec: 228242.97
Transfer/sec: 28.30MB
rust (active-web)
Latency 8.77ms 3.15ms 31.07ms 76.16%
Req/Sec 115.76k 18.13k 156.46k 62.22%
1085310 requests in 5.08s, 133.52MB read
Requests/sec: 213464.53
Transfer/sec: 26.26MB
585デフォルトの名無しさん
2022/10/01(土) 10:38:25.68ID:WgkbTFRg ひょっとすると JavaScript だから遅いんじゃなかろうか
586デフォルトの名無しさん
2022/10/01(土) 11:22:52.62ID:TxHdfIOV IO処理が主体ならそんなに変わらない認識だったけど10行程度のWebAPIでここまで変わると思ってなかった
587デフォルトの名無しさん
2022/10/01(土) 11:33:35.78ID:PbFN9kvE >>583
なった
なった
588デフォルトの名無しさん
2022/10/01(土) 11:52:41.67ID:h74T9WJ/ スパゲッティにならなきゃRustは最速だな
589デフォルトの名無しさん
2022/10/01(土) 12:47:40.48ID:bVj73OG1 Goは1コアに制限したらGCのペナルティが大きいんじゃね。今は複数コアある前提でコンカレントマークでしょ?
590デフォルトの名無しさん
2022/10/01(土) 13:00:54.63ID:d18GHPyd >>584
起動時にモジュールを大量に読み込んでるしJITもしてるからそんなベンチじゃ遅いのは当たり前
起動時にモジュールを大量に読み込んでるしJITもしてるからそんなベンチじゃ遅いのは当たり前
591デフォルトの名無しさん
2022/10/01(土) 13:02:43.96ID:d18GHPyd スクリプト言語とコンパイル言語を比較する場合はランタイムのオーバーヘッドに差がありすぎるのだから
そこで差が出るようなベンチは無意味
実際のアプリケーション相当の処理を想定しないと
そこで差が出るようなベンチは無意味
実際のアプリケーション相当の処理を想定しないと
592デフォルトの名無しさん
2022/10/01(土) 13:24:49.19ID:TxHdfIOV593デフォルトの名無しさん
2022/10/01(土) 13:29:50.04ID:d18GHPyd >>592
偉そうにいう前にまともなベンチしろ
偉そうにいう前にまともなベンチしろ
594デフォルトの名無しさん
2022/10/01(土) 13:35:05.69ID:TxHdfIOV >>593
いやだから10秒だろうが1分だろうが5分だろうが変わらないって
偉そうなこと言ってるのはお前だろ
あらゆるノイズを排除してここまで差が出るんだから起動時のコストなんて関係ないだろ
適当なこと言ってマウント取ってんじゃねーよゴミ
いやだから10秒だろうが1分だろうが5分だろうが変わらないって
偉そうなこと言ってるのはお前だろ
あらゆるノイズを排除してここまで差が出るんだから起動時のコストなんて関係ないだろ
適当なこと言ってマウント取ってんじゃねーよゴミ
595デフォルトの名無しさん
2022/10/01(土) 13:42:50.86ID:d18GHPyd >>594
ゴミはお前
論点ずらしするな
ただのストローマンだぞ
俺の言ったことをまずやれ
そしてそれでも差があるなら反論しろ
それが正当なやり方だろ
お前は手を動かさずに自分の意見が正しいと言ってるだけ
もしかして数分実行しただけでキャッシュができると思ってる?
しかもそんなよくわからんサンプルで?
そもそもキャッシュができる条件など仕様にはない
できない可能性もある
そういうことを含めてのベンチなんだよ
ゴミはお前
論点ずらしするな
ただのストローマンだぞ
俺の言ったことをまずやれ
そしてそれでも差があるなら反論しろ
それが正当なやり方だろ
お前は手を動かさずに自分の意見が正しいと言ってるだけ
もしかして数分実行しただけでキャッシュができると思ってる?
しかもそんなよくわからんサンプルで?
そもそもキャッシュができる条件など仕様にはない
できない可能性もある
そういうことを含めてのベンチなんだよ
596デフォルトの名無しさん
2022/10/01(土) 13:44:30.12ID:d18GHPyd 「俺の意見が間違ってる」ことをコードで証明しろ
ストローマンの口八百で語ってもなんの意味もない
それこそただのマウント野郎だろ
ストローマンの口八百で語ってもなんの意味もない
それこそただのマウント野郎だろ
597デフォルトの名無しさん
2022/10/01(土) 13:50:13.47ID:8aXdhr6R いくらなんでもNode遅すぎで気になるね
レスポンスしてるヘッダの内容とかも比べてみなよ
HTTP/1.1が使われてるのか、cookieセットされてるかとか、keep-aliveはどうかとか
レスポンスしてるヘッダの内容とかも比べてみなよ
HTTP/1.1が使われてるのか、cookieセットされてるかとか、keep-aliveはどうかとか
598デフォルトの名無しさん
2022/10/01(土) 13:50:43.33ID:d18GHPyd 俺の意見を無視するならここに書く意味はないし
はろーわーるどのベンチでnodeは遅いね、で終わる話
ここに書かずに1人で納得しとけ
ここに書く以上何か意見を求めてるんだろ?
その意見を言ってやってるのに無視する
正しい人間の態度とは思えんな
あまりの自分勝手さに怒りさえ覚える
はろーわーるどのベンチでnodeは遅いね、で終わる話
ここに書かずに1人で納得しとけ
ここに書く以上何か意見を求めてるんだろ?
その意見を言ってやってるのに無視する
正しい人間の態度とは思えんな
あまりの自分勝手さに怒りさえ覚える
599デフォルトの名無しさん
2022/10/01(土) 13:58:44.87ID:d18GHPyd とりあえず家帰ったら動かしてみる
俺のローカル環境だが
俺のローカル環境だが
600デフォルトの名無しさん
2022/10/01(土) 14:07:18.89ID:TxHdfIOV >>597
試したけどcurl -vで複数回投げた時にconnection left intactとRe-using出るからコネクション使いまわせてるね
HTTP1.1だからデフォルトでkeepaliveになってる
wrkはHTTP1.1対応
Nodeは日付とか色々ヘッダに入ってみたいだから公平な比較にはなってないけどそれにしても差があるすぎると感じるね
試したけどcurl -vで複数回投げた時にconnection left intactとRe-using出るからコネクション使いまわせてるね
HTTP1.1だからデフォルトでkeepaliveになってる
wrkはHTTP1.1対応
Nodeは日付とか色々ヘッダに入ってみたいだから公平な比較にはなってないけどそれにしても差があるすぎると感じるね
601デフォルトの名無しさん
2022/10/01(土) 14:27:28.59ID:nfi+ceWJ >>584
Q:なぜ何でここまで差が出るのか?
A:この場合、rust (active-web) は、asyncなどでI/O待ちを切り替え起点とした非同期処理を行うが
goは1リクエストに対してgoroutineが1つ付く。細かく言うとRustはソケットI/Oへ受・送信が終わらないと
次のリクエストは処理待ちになる。
結果はReq/Secに出て高速で(効率的な)スイッチングを行えるgo (net/http)のほうが最終的に処理できる
リクエスト数は高いが、平均処理時間avgはRustのほうがほんの少し速くなる。
goでavgが遅くなるのは、処理中にI/Oを起点としない時分割で別リクエスト処理へ切り替えるために
切り替えコスト+処理コストの合計で1つのリクエストを完了する時間は長くなる
余談だが、wrkは5秒だと並列テストなどをするには短い。より厳密な計測ができるwrk2とかあるが
この場合は並列での負荷テストではないのでそんなに変わらない。ただ最初の1秒が参考にならない
上の例はあくまで1コアだが、多コア高負荷環境(1000同時スレッド・3万リクエスト・30秒ぐらい)だと
50%はgoのほうが速くなり、Req/SecはRustのほうが多くなる
node(express)は、express自体の重厚さJS/TS自体の重さがかなり効いていると思う
Q:なぜ何でここまで差が出るのか?
A:この場合、rust (active-web) は、asyncなどでI/O待ちを切り替え起点とした非同期処理を行うが
goは1リクエストに対してgoroutineが1つ付く。細かく言うとRustはソケットI/Oへ受・送信が終わらないと
次のリクエストは処理待ちになる。
結果はReq/Secに出て高速で(効率的な)スイッチングを行えるgo (net/http)のほうが最終的に処理できる
リクエスト数は高いが、平均処理時間avgはRustのほうがほんの少し速くなる。
goでavgが遅くなるのは、処理中にI/Oを起点としない時分割で別リクエスト処理へ切り替えるために
切り替えコスト+処理コストの合計で1つのリクエストを完了する時間は長くなる
余談だが、wrkは5秒だと並列テストなどをするには短い。より厳密な計測ができるwrk2とかあるが
この場合は並列での負荷テストではないのでそんなに変わらない。ただ最初の1秒が参考にならない
上の例はあくまで1コアだが、多コア高負荷環境(1000同時スレッド・3万リクエスト・30秒ぐらい)だと
50%はgoのほうが速くなり、Req/SecはRustのほうが多くなる
node(express)は、express自体の重厚さJS/TS自体の重さがかなり効いていると思う
602デフォルトの名無しさん
2022/10/01(土) 14:50:55.94ID:nfi+ceWJ ただWSLであってもLinuxのbacklog当たりのカーネルパラメータを弄れば結果は変わるかもしれない。
並列・高負荷ではなくても4000コネクションだと標準の状態だと足りない気がする
$ sudo sysctl -a 2>&1 | grep -E 'somaxconn|tcp_max_syn_backlog'
net.core.somaxconn = 128
net.ipv4.tcp_max_syn_backlog = 512
並列・高負荷ではなくても4000コネクションだと標準の状態だと足りない気がする
$ sudo sysctl -a 2>&1 | grep -E 'somaxconn|tcp_max_syn_backlog'
net.core.somaxconn = 128
net.ipv4.tcp_max_syn_backlog = 512
603デフォルトの名無しさん
2022/10/01(土) 14:57:42.06ID:8aXdhr6R WSLでやってんのか、WSLってパフォーマンス的にはなんか特徴あるのか?
このあと気が向いたらおれもちょっと気になるとこのベンチ比較してみる
このあと気が向いたらおれもちょっと気になるとこのベンチ比較してみる
604デフォルトの名無しさん
2022/10/01(土) 15:34:25.37ID:OE4o0z6J とりあえずNodeは遅いゴミってのが証明されてるな
605デフォルトの名無しさん
2022/10/01(土) 15:59:56.14ID:qXf32HZQ >>597
その木なんの木。
その木なんの木。
606デフォルトの名無しさん
2022/10/01(土) 17:07:51.42ID:nfi+ceWJ もう1つ言うと高負荷で比べるならrust (active-web) なら、go側はSO_REUSEPORT/SO_REUSEADDRを
効くようにするか、fasthttp系(fiber)などを使用すべきで、net/httpを普通に使っただけだと極限の性能では
無いので注意が必要です、今回は高負荷でないので関係ありませんが
効くようにするか、fasthttp系(fiber)などを使用すべきで、net/httpを普通に使っただけだと極限の性能では
無いので注意が必要です、今回は高負荷でないので関係ありませんが
607デフォルトの名無しさん
2022/10/01(土) 19:35:39.80ID:cdNryapk 利用者数が全然違うので、今はGo言語を使うほうが良いのでは?
もしもRustが使われるようになったなら、その時使えば良い。
今はまだHaskell候補の状態。
そのうちHaskellのように誰も見向きもしなくなるんだろうなあと。
もしもRustが使われるようになったなら、その時使えば良い。
今はまだHaskell候補の状態。
そのうちHaskellのように誰も見向きもしなくなるんだろうなあと。
608デフォルトの名無しさん
2022/10/01(土) 19:44:27.68ID:WgkbTFRg 万能言語は作れない
用途別だ
用途別だ
609デフォルトの名無しさん
2022/10/01(土) 22:06:34.84ID:WF3iEAg3 並行プログラミングなら、関数型のElixir
610デフォルトの名無しさん
2022/10/01(土) 22:14:09.37ID:dtVI/r0B 型なしのゴミ
611デフォルトの名無しさん
2022/10/01(土) 22:57:03.33ID:6Ogoexfu 型連呼している奴って逆に無能なのかと思うw
612デフォルトの名無しさん
2022/10/01(土) 23:39:41.67ID:sINRWAWi 殊更に型の重要性を連呼する人間は、本人が有能か無能かはともかく、自分含めて人間の技能と精度を信用していないというのは確かだと思うよ
613デフォルトの名無しさん
2022/10/02(日) 05:56:42.85ID:ieoagAHy >>611
では質問するがなぜMicrosoftはJavascriptは不十分だと認識してTypescriptを開発したの?そして普及したの?
なぜPythonなどのスクリプト言語はしきりに型ヒント機能を追加してるの?
無能は型の重要性を理解できないお前、エンタープライズでは必須
では質問するがなぜMicrosoftはJavascriptは不十分だと認識してTypescriptを開発したの?そして普及したの?
なぜPythonなどのスクリプト言語はしきりに型ヒント機能を追加してるの?
無能は型の重要性を理解できないお前、エンタープライズでは必須
614デフォルトの名無しさん
2022/10/02(日) 07:31:01.25ID:er6rX+SK >>610
じゃあErlangなら文句ないな
じゃあErlangなら文句ないな
615デフォルトの名無しさん
2022/10/02(日) 08:25:14.53ID:kfWfVuRd >>611
みんな無能だよ。
たまに型無しで完璧にやれるやつはいるけど、そういう奴は他の人と一緒に仕事しても自分の高い能力を盾にルールに従ってもらえないから面倒だわ。
一人でR&Dとか調査主体の部署でやってもらうのが無難。
みんな無能だよ。
たまに型無しで完璧にやれるやつはいるけど、そういう奴は他の人と一緒に仕事しても自分の高い能力を盾にルールに従ってもらえないから面倒だわ。
一人でR&Dとか調査主体の部署でやってもらうのが無難。
616デフォルトの名無しさん
2022/10/02(日) 09:29:20.44ID:nK3zLFOq 無能向けのルールに従っていたらせっかくの高い能力を発揮できないじゃん
妥当じゃないの
妥当じゃないの
618デフォルトの名無しさん
2022/10/02(日) 11:45:56.93ID:HCH0ui8L619デフォルトの名無しさん
2022/10/02(日) 11:49:28.21ID:nGDo4Vej620デフォルトの名無しさん
2022/10/02(日) 11:51:59.81ID:rn8puyre621デフォルトの名無しさん
2022/10/02(日) 11:54:19.38ID:qWyZcf2G >実際、型を合わせるだけで正常系は大体うまく動くからね
ほら無能じゃんw
ほら無能じゃんw
622デフォルトの名無しさん
2022/10/02(日) 11:56:25.66ID:I7V0xRyx >>612
テスト書かないの?
テスト書かないの?
623デフォルトの名無しさん
2022/10/02(日) 12:04:09.63ID:37W/LuFO まあ実際動的型付け言語でやるプロジェクトは
少数精鋭のチーム編成ができないと厳しいわな
メンバーが多くてコミュニケーションコストが高かったり入れ替わりが頻繁だったり下請け孫請けから最低ラインを下回るメンツが入ってくるようなら静的型付け言語のほうが楽
少数精鋭のチーム編成ができないと厳しいわな
メンバーが多くてコミュニケーションコストが高かったり入れ替わりが頻繁だったり下請け孫請けから最低ラインを下回るメンツが入ってくるようなら静的型付け言語のほうが楽
624デフォルトの名無しさん
2022/10/02(日) 12:30:18.64ID:Bnxz+VO6625デフォルトの名無しさん
2022/10/02(日) 12:34:37.19ID:Bnxz+VO6 APIに存在しうるCPU処理、IO処理を排除してミニマムな状態でもGoやRustと比べるとここまで差が出る
だからISUCONで誰もNodeなんか使わないんだよ
Goは手軽でスピードが出るから人気なのは自明だな
だからISUCONで誰もNodeなんか使わないんだよ
Goは手軽でスピードが出るから人気なのは自明だな
626デフォルトの名無しさん
2022/10/02(日) 18:32:39.72ID:95XqQzPR >>622
このスレに居てその質問は流石に不勉強じゃないかな……
静的型付け言語での実装においてもテストはもちろん書かれるよ
当然テストに網羅性は無いわけだけど、型はそれを補ってくれて、テストで調べるべき範囲を絞ってくれる訳だ
スイスチーズモデルにしても型は理論的に一定の範囲に穴がないことを保証してくれるのでテストの良き友だよ
ランタイムやコンパイラの型の実装が間違ってるかもしれないとかいう意見は、構文解析が間違ってるとか最適化が間違ってる並の、有り得はするけど議論するレイヤーが異なる難癖なので無視するよ
このスレに居てその質問は流石に不勉強じゃないかな……
静的型付け言語での実装においてもテストはもちろん書かれるよ
当然テストに網羅性は無いわけだけど、型はそれを補ってくれて、テストで調べるべき範囲を絞ってくれる訳だ
スイスチーズモデルにしても型は理論的に一定の範囲に穴がないことを保証してくれるのでテストの良き友だよ
ランタイムやコンパイラの型の実装が間違ってるかもしれないとかいう意見は、構文解析が間違ってるとか最適化が間違ってる並の、有り得はするけど議論するレイヤーが異なる難癖なので無視するよ
627デフォルトの名無しさん
2022/10/02(日) 18:49:30.07ID:rGaa40h0 >>626
バカにされてることがわからず斜め上のレスをしちゃう無能w
バカにされてることがわからず斜め上のレスをしちゃう無能w
628デフォルトの名無しさん
2022/10/02(日) 19:02:06.24ID:ieoagAHy >>627
上司に無能って言われた経験ありそうw
上司に無能って言われた経験ありそうw
629デフォルトの名無しさん
2022/10/02(日) 19:07:31.43ID:luHcc1UZ アンカーを付けるときはまず無知無能異常者認定する複おじしぐさ
630デフォルトの名無しさん
2022/10/02(日) 20:08:45.57ID:JygyFtJu Rustなら安心安全だからテストは必要ない
コンパイラーが全部教えてくれる
コンパイラーが全部教えてくれる
631デフォルトの名無しさん
2022/10/02(日) 20:37:15.64ID:X4ijFCuF >>630
Rustはプログラムを書き始めるためのcargo new --lib した時にテスト用mod testsの雛形が自動的に生成用意されるくらいテスト重視主義の言語
もちろん強力な型システムによりRustコンパイラがコンパイル時点でデータ競合を含む多くのバグを実行する前に指摘してくれるのも事実
その分だけテスト記述は本来のロジックに関するテストに対して専念できる
Rustはプログラムを書き始めるためのcargo new --lib した時にテスト用mod testsの雛形が自動的に生成用意されるくらいテスト重視主義の言語
もちろん強力な型システムによりRustコンパイラがコンパイル時点でデータ競合を含む多くのバグを実行する前に指摘してくれるのも事実
その分だけテスト記述は本来のロジックに関するテストに対して専念できる
632デフォルトの名無しさん
2022/10/02(日) 20:38:45.06ID:zjrrEOrw633デフォルトの名無しさん
2022/10/02(日) 20:47:01.74ID:Vwpwuo9W >>627
バカにされてる、というか煽られている部分を感じなかった訳じゃないけど、そうだとしても煽ってくる人間は、型とテストが複合的にエラーを減らす手段であって排他なものではないということを、理解していないか少なくとも認識していないので、レスの内容は変わらないよ
大体実装が早くできて楽だよね、っていう動的型付け言語の特性を私は否定するつもりはないし
技術というのはメリット・デメリットを認識した上で選定するものであって、単に煽るだけとか無能呼ばわりするような人間がそれらを認識できてるとは思わないし、もし不勉強と言われたくないならテストを書くという単一の手段がエラーを防ぐという点でどういう十分さがあるのか説明しなきゃ
あと
>>630
Rustだって基本のツールチェーンでテストが実行できるように作られてるんだからテストが必要ないなんで事は少なくとも言語開発チームは思っちゃいないよ
テキトー言わんでくれるかな
バカにされてる、というか煽られている部分を感じなかった訳じゃないけど、そうだとしても煽ってくる人間は、型とテストが複合的にエラーを減らす手段であって排他なものではないということを、理解していないか少なくとも認識していないので、レスの内容は変わらないよ
大体実装が早くできて楽だよね、っていう動的型付け言語の特性を私は否定するつもりはないし
技術というのはメリット・デメリットを認識した上で選定するものであって、単に煽るだけとか無能呼ばわりするような人間がそれらを認識できてるとは思わないし、もし不勉強と言われたくないならテストを書くという単一の手段がエラーを防ぐという点でどういう十分さがあるのか説明しなきゃ
あと
>>630
Rustだって基本のツールチェーンでテストが実行できるように作られてるんだからテストが必要ないなんで事は少なくとも言語開発チームは思っちゃいないよ
テキトー言わんでくれるかな
634デフォルトの名無しさん
2022/10/02(日) 21:05:46.88ID:2u4kRfur >>633
かつての静的型付け言語は型宣言が面倒だったため動的型付け言語は型宣言が必要ない僅かな分だけ有利だった
今の静的型付け言語は自動的に型推論が行われるため動的型付け言語が有利なことはない
実行時デバッグの手間が増える動的型付け言語は劣ったプログラミング言語
かつての静的型付け言語は型宣言が面倒だったため動的型付け言語は型宣言が必要ない僅かな分だけ有利だった
今の静的型付け言語は自動的に型推論が行われるため動的型付け言語が有利なことはない
実行時デバッグの手間が増える動的型付け言語は劣ったプログラミング言語
635デフォルトの名無しさん
2022/10/02(日) 21:25:54.32ID:zjrrEOrw 現実は違う
まるで不殺主人公みたいに動的型を殺さないし、コンパイルが通らなかった人を殺さない
検査しかしないくせに結構役に立つのが現実
まるで不殺主人公みたいに動的型を殺さないし、コンパイルが通らなかった人を殺さない
検査しかしないくせに結構役に立つのが現実
636デフォルトの名無しさん
2022/10/02(日) 22:58:21.35ID:5dFyg2Cc FacebookがRust使ってると自慢レスがあったけど。
それでFacebookは使いにくいのかと納得してしまった。
それでFacebookは使いにくいのかと納得してしまった。
637デフォルトの名無しさん
2022/10/02(日) 23:20:02.90ID:/RWx79y8 c++は拡張子が規格で決まってない糞だ
638デフォルトの名無しさん
2022/10/02(日) 23:54:28.90ID:VOshVQpb639デフォルトの名無しさん
2022/10/02(日) 23:55:48.81ID:nK3zLFOq じゃあ企画委員会に入ればいいんでねーの
640デフォルトの名無しさん
2022/10/02(日) 23:57:50.44ID:5dFyg2Cc >>638
アマゾンが倒産する日も近いな。
アマゾンが倒産する日も近いな。
641デフォルトの名無しさん
2022/10/03(月) 00:04:13.05ID:FlGgn4CT Rust Foundationを共同設立したGoogle, Microsoft, Amazonなど各社は負け組になる可能性ありうる
642デフォルトの名無しさん
2022/10/03(月) 00:06:35.78ID:U6ww4YhW 型の話はRDBとNoSQLの比較で
schema on writeがいいかschema on readがいいかという話と同じ
どちらか一方がが常に言い訳ではなくそれぞれ良し悪しがある
schema on writeがいいかschema on readがいいかという話と同じ
どちらか一方がが常に言い訳ではなくそれぞれ良し悪しがある
643デフォルトの名無しさん
2022/10/03(月) 00:46:15.86ID:q34w0x/H 根本的哲学的になぜ型というものが存在してるのか
644デフォルトの名無しさん
2022/10/03(月) 01:01:23.35ID:8GQ2M+OR >>642
NoSQLデータベースの多くはschema on readではなく、単に入れたものをそのまま出すだけだ
多くのNoSQLはオンライン性能が重要なため、Elasticsearchのようにschema on writeを使用するものもある
schema on readはむしろデータ分析用途でリレーショナルモデルとSQLで使用される場合が多い
NoSQLデータベースの多くはschema on readではなく、単に入れたものをそのまま出すだけだ
多くのNoSQLはオンライン性能が重要なため、Elasticsearchのようにschema on writeを使用するものもある
schema on readはむしろデータ分析用途でリレーショナルモデルとSQLで使用される場合が多い
645デフォルトの名無しさん
2022/10/03(月) 01:23:30.99ID:8DSCRzId OLTP用かつschema on readなNoSQL DBってあるっけ?
MongoやDynamoDBみたいなKVS+α系はキースキーマとインデックスの併用だから典型的なschema on writeだよな
インデックスなしのスキャン操作はschema on readと言えなくもないけどオンラインでは普通使わないよね
MongoやDynamoDBみたいなKVS+α系はキースキーマとインデックスの併用だから典型的なschema on writeだよな
インデックスなしのスキャン操作はschema on readと言えなくもないけどオンラインでは普通使わないよね
646デフォルトの名無しさん
2022/10/03(月) 05:58:59.43ID:j+ZBVQFg647デフォルトの名無しさん
2022/10/03(月) 06:14:28.71ID:g/IsZXX1 a[i]の順序を逆にi[a]と書くのが何故マナー違反かって質問が存在することは誰も否定しなかったので
質問が存在するゆえに型が存在する
質問が存在するゆえに型が存在する
648デフォルトの名無しさん
2022/10/03(月) 10:12:35.74ID:BGisZcin >>640
判ります
判ります
649デフォルトの名無しさん
2022/10/03(月) 10:14:07.92ID:BGisZcin650デフォルトの名無しさん
2022/10/03(月) 10:16:41.11ID:BGisZcin >>637
OSが存在しないファイルシステムも存在しない環境でどうやって拡張子を定義するんだって話
OSが存在しないファイルシステムも存在しない環境でどうやって拡張子を定義するんだって話
651デフォルトの名無しさん
2022/10/03(月) 10:19:27.04ID:BGisZcin >>633
>型とテストが複合的にエラーを減らす手段であって排他なものではないということを、理解していないか少なくとも認識していない
めっちゃ判ります
っていうか煽るためにわざと知らない気付かないフリしてるのかと思える
>型とテストが複合的にエラーを減らす手段であって排他なものではないということを、理解していないか少なくとも認識していない
めっちゃ判ります
っていうか煽るためにわざと知らない気付かないフリしてるのかと思える
652デフォルトの名無しさん
2022/10/03(月) 10:23:00.71ID:TB48Z0Cc ・動的型付け言語 ←動的動作のためメモリ上に型情報が必要となる
・GCあり言語 ←GCのためにメモリ上に一部型情報が必要となる
・GCなし言語 ←基本的にはメモリ上に型情報は必要ない
(ただし敢えて動的に型を扱いたい時は型情報をメモリ上に持たせる)
・GCあり言語 ←GCのためにメモリ上に一部型情報が必要となる
・GCなし言語 ←基本的にはメモリ上に型情報は必要ない
(ただし敢えて動的に型を扱いたい時は型情報をメモリ上に持たせる)
653デフォルトの名無しさん
2022/10/03(月) 11:43:54.89ID:+b5G+0cY654デフォルトの名無しさん
2022/10/03(月) 11:45:28.34ID:+b5G+0cY >>645
おまえもschema on readの意味くらいは調べろよ
おまえもschema on readの意味くらいは調べろよ
655デフォルトの名無しさん
2022/10/03(月) 12:09:23.06ID:iqvSOKEH 恥ずかしいから>>654こそ調べたほうがいいぞ
schema on readというのはデータ分析や大規模バッチ処理の文脈で出てくる言葉で、Hadoopのように検索時に生に近い形式のデータを力業でフルスキャンする方式だ
データ分析においてはデータの取り込みは柔軟にしつつ読むときに工夫しろというベストプラクティスがあって、それを端的に表している
対してschema on writeってのは普通のRDBやMongoDB、Elasticsearchのような、書き込み時にスキーマ情報を使ってインデックスを作る方式を指す
schema on readというのはデータ分析や大規模バッチ処理の文脈で出てくる言葉で、Hadoopのように検索時に生に近い形式のデータを力業でフルスキャンする方式だ
データ分析においてはデータの取り込みは柔軟にしつつ読むときに工夫しろというベストプラクティスがあって、それを端的に表している
対してschema on writeってのは普通のRDBやMongoDB、Elasticsearchのような、書き込み時にスキーマ情報を使ってインデックスを作る方式を指す
656デフォルトの名無しさん
2022/10/03(月) 12:15:37.58ID:FME7tQvo657デフォルトの名無しさん
2022/10/03(月) 19:19:43.61ID:1D9UPeOl >>656
そもそもソースがファイルかどうかもわからんのにお前は何を言ってるんだ?w
そもそもソースがファイルかどうかもわからんのにお前は何を言ってるんだ?w
658デフォルトの名無しさん
2022/10/04(火) 00:52:19.50ID:0X2CPyYg >>657
ム板で、ソースがファイルじゃないなら何?
ム板で、ソースがファイルじゃないなら何?
659デフォルトの名無しさん
2022/10/04(火) 06:00:39.30ID:/0MiP4cL660デフォルトの名無しさん
2022/10/04(火) 09:09:48.35ID:k8Tx7LNR こういうとき絶対>>657本人じゃなくて
横から「○○じゃね?」っていうやつがやってくるの面白いよね
横から「○○じゃね?」っていうやつがやってくるの面白いよね
661デフォルトの名無しさん
2022/10/04(火) 11:43:33.67ID:tBDpfoR6 >>660
知らんけど がついてたらモアベターだったよね。
知らんけど がついてたらモアベターだったよね。
662デフォルトの名無しさん
2022/10/04(火) 12:54:23.68ID:b5efofhH ファイル以外のソースがあるとしてそれがファイルの拡張子が決まってないこととなんか関係あるのか?
知らんけどw
知らんけどw
663デフォルトの名無しさん
2022/10/04(火) 13:32:51.60ID:k8Tx7LNR こういう流れで>>657本人が出てきて
最後まできっちり議論に付き合うケースって皆無よねw
最後まできっちり議論に付き合うケースって皆無よねw
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 空自機レーダー照射、音声データ公開 中国 ★3 [蚤の市★]
- 日銀「歴史的」利上げ迫る 35年ぶりの年間上げ幅、0.5%の壁を突破 [蚤の市★] [蚤の市★]
- 【無職の男(31)】女子小学生に次々触る 下半身を露出した状態で 公然わいせつ、不同意わいせつ疑い 千葉県警 [nita★]
- 【サッカー】UEFA-CL第6節 インテル×リバプール、バルセロナ×フランクフルト、バイエルン×スポルティングなど [久太郎★]
- 【YouTuber】バイク事故で入院のゆたぼん、振込で「お見舞金」募る [muffin★]
- 低所得層のマクドナルド離れが深刻に 広がる「ファストフード格差」の真相 米国 [少考さん★]
- 【実況】博衣こよりのえちえち朝活🧪
- 中国がここまで過敏になるのは日本に前科があるから。盧溝橋、満州事変。ジャップの先制攻撃は挙げればキリがないけど [472617201]
- 冬季賞与報告スレ [577451214]
- アホが使うワード 解像度 言語化 あと一つは?
- こーむいんだけど銀行にボーナス振り込まれていた
- 『猟友会がクマ駆除を嫌がるなら潰すべき。職務を放棄するハンターから免許や銃を没収して罰金を取ろう』の声、ネットで上がる [932029429]
