「C++の色々配慮してめんどくさい感じは好きだけど、実務になったらメモリ安全性とか考えて今後Rustに変わっていくんかな」
「うだうだ言ってないで仕事で必要なのをやればいいんだよ、趣味なら好きなのやればいい」
っていう雑談スレ。
・C/C++ <=> Rust いまさら聞けない移行質問なども適当にどぞ
・レスバはじめんのは勝手だけど、面白いこと・へぇなこと書いたヤツが優勝
・マな話は、マのスレもご活用ください↓
前スレ: 結局C++とRustってどっちが良いの? 7traits
http://mevius.5ch.net/test/read.cgi/tech/1693451813/
関連スレ(マ板): Google&Microsoft「セキュリティバグの70%はC/C++のメモリ管理ミス。Rustにする」
https://medaka.5ch.net/test/read.cgi/prog/1619943288/
探検
結局C++とRustってどっちが良いの? 8traits
■ このスレッドは過去ログ倉庫に格納されています
2023/10/28(土) 13:45:00.38ID:fh9BWjjr
392デフォルトの名無しさん
2023/11/16(木) 11:23:05.99ID:5W7eUxhr 既存の枯れた部分を移行するメリットは低くそこに興味を持っているのはおまえらだけ
全く新たに作られていってるシステムなどに使われていく言語が世間での焦点
全く新たに作られていってるシステムなどに使われていく言語が世間での焦点
393デフォルトの名無しさん
2023/11/16(木) 11:36:03.27ID:oAo4ftxR394デフォルトの名無しさん
2023/11/16(木) 11:40:52.68ID:5W7eUxhr 既存の枯れた安定してるものを他言語で置き換えなんてムダなことをするバカはいない
>>5のような新たなシステムがどの言語で書かれているかが全て
>>5のような新たなシステムがどの言語で書かれているかが全て
395デフォルトの名無しさん
2023/11/16(木) 11:44:41.17ID:c22vQqL3396デフォルトの名無しさん
2023/11/16(木) 11:52:51.95ID:nxuWB9A/397デフォルトの名無しさん
2023/11/16(木) 11:59:45.29ID:oAo4ftxR >CDNプロバイダのCloudflareは、同社のグローバルなCDNの基盤として長らく利用してきたNGINXに代えて、
>>394「C言語製の枯れて安定してるnginxをわざわざRustで置き換えるCloudflareはムダなことをするバカ」
>>394「C言語製の枯れて安定してるnginxをわざわざRustで置き換えるCloudflareはムダなことをするバカ」
398デフォルトの名無しさん
2023/11/16(木) 12:24:14.05ID:AwpJQf7l >>397
Pingoraの話じゃないの?
Pingoraの話じゃないの?
399デフォルトの名無しさん
2023/11/16(木) 12:31:03.07ID:1vSd70Wx >>397
記事読めてる?
nginxでは機能が不十分で様々な検討をして新たに作ることになったとある
そしてRust製のPingoraを開発して以下の性能を出したと記事に書かれている
>Pingoraはすでに同社のCDNに採用され、毎日1兆回以上のリクエストを処理し、性能向上や数多くの新機能の提供を実現しつつ、従来と比較してCPUとメモリリソースの消費はいずれも3分の1程度に収まっているとのこと。
記事読めてる?
nginxでは機能が不十分で様々な検討をして新たに作ることになったとある
そしてRust製のPingoraを開発して以下の性能を出したと記事に書かれている
>Pingoraはすでに同社のCDNに採用され、毎日1兆回以上のリクエストを処理し、性能向上や数多くの新機能の提供を実現しつつ、従来と比較してCPUとメモリリソースの消費はいずれも3分の1程度に収まっているとのこと。
400デフォルトの名無しさん
2023/11/16(木) 12:42:36.36ID:c22vQqL3401デフォルトの名無しさん
2023/11/16(木) 12:47:30.32ID:QXdh7keC APIがRustになってないとRust採用する意味が無い
402デフォルトの名無しさん
2023/11/16(木) 12:53:18.79ID:1vSd70Wx403デフォルトの名無しさん
2023/11/16(木) 12:53:44.43ID:oAo4ftxR404デフォルトの名無しさん
2023/11/16(木) 13:04:58.32ID:1vSd70Wx たとえ後発のより良い新言語(ex. Rust)であっても
システムそのままで新言語への置き換えはコスト的に意味がなく
新たなシステムへ置き換える時に新言語の採用は大いに意味があるという実例だろう
システムそのままで新言語への置き換えはコスト的に意味がなく
新たなシステムへ置き換える時に新言語の採用は大いに意味があるという実例だろう
405デフォルトの名無しさん
2023/11/16(木) 13:27:53.62ID:6XhGio1W 403 は言葉使いからして感情でしか物事をみれない
406デフォルトの名無しさん
2023/11/16(木) 13:37:39.61ID:GrubNHks >>383
一応メールの中でコードを書いてるって言ってたけどね
一応メールの中でコードを書いてるって言ってたけどね
407デフォルトの名無しさん
2023/11/16(木) 13:40:47.78ID:GrubNHks408デフォルトの名無しさん
2023/11/16(木) 14:28:52.70ID:U5aa+aRa >>394
置き換えがしたいという意志があるとは誰も言ってない
そもそも修正と新規作成をどうしても区別したいという意志がない
ただ、ミクロな意志と無関係なマクロな現象として
置き換えが自然発生するかも知れないという謎の空気はある
置き換えがしたいという意志があるとは誰も言ってない
そもそも修正と新規作成をどうしても区別したいという意志がない
ただ、ミクロな意志と無関係なマクロな現象として
置き換えが自然発生するかも知れないという謎の空気はある
409デフォルトの名無しさん
2023/11/16(木) 15:09:24.13ID:IFD1cI+g early adoptersやearly majorityになるのは
Linuxのperipheralとしてビジネスをしている企業ではなく
Linuxをperipheralとしたビジネスをしている企業
前者の大半はゲームのルールを他者に支配されている立場であり裁量の余地が小さいためマインドセットが保守的
純粋なコストベネフィット以外に低いリスク選好度からくる心理的抵抗が強いためearly adoptersやearly majorityにはなりにくい
複オジがいつも事例であげてるAndroid、Cloudflare、AWSなどが全て後者なのは偶然ではなく構造上の特性から生じる必然
新しい技術というのはゲームのルールを自らコントロールできるこちら側の企業によって牽引される
Linuxのperipheralとしてビジネスをしている企業ではなく
Linuxをperipheralとしたビジネスをしている企業
前者の大半はゲームのルールを他者に支配されている立場であり裁量の余地が小さいためマインドセットが保守的
純粋なコストベネフィット以外に低いリスク選好度からくる心理的抵抗が強いためearly adoptersやearly majorityにはなりにくい
複オジがいつも事例であげてるAndroid、Cloudflare、AWSなどが全て後者なのは偶然ではなく構造上の特性から生じる必然
新しい技術というのはゲームのルールを自らコントロールできるこちら側の企業によって牽引される
410デフォルトの名無しさん
2023/11/16(木) 15:14:00.47ID:IFD1cI+g つまり何が言いたかったかというと
Linux KernelにおけるRustの採用率というのは
技術採用ライフサイクルの観点で見た場合
late majorityやluggardsのRust採用率の目安だということ
Linux KernelにおけるRustの採用率というのは
技術採用ライフサイクルの観点で見た場合
late majorityやluggardsのRust採用率の目安だということ
411デフォルトの名無しさん
2023/11/16(木) 15:14:30.69ID:QXdh7keC adaptor だと思ってたけど adopter なんか
412デフォルトの名無しさん
2023/11/16(木) 15:24:27.23ID:JRjQuxlT413デフォルトの名無しさん
2023/11/16(木) 15:29:19.80ID:FRf+5dUd early adopter とは
https://dictionary.goo.ne.jp/word/en/early+adopter/
アーリーアダプター,(新製品の)初期受容者
adopter とは
https://dictionary.goo.ne.jp/word/en/adopter/
1 採用[採択]者
2 養い親,里親
https://dictionary.goo.ne.jp/word/en/early+adopter/
アーリーアダプター,(新製品の)初期受容者
adopter とは
https://dictionary.goo.ne.jp/word/en/adopter/
1 採用[採択]者
2 養い親,里親
414デフォルトの名無しさん
2023/11/16(木) 16:41:51.84ID:cWrKpE+4415デフォルトの名無しさん
2023/11/16(木) 17:06:23.69ID:DQsCMcKm それぞれのケースで大きく異なるから区別が必要
(1) 新規に作るもの
CloudflareやAWSの例やゲームの新フレームワークやLinuxの新たなデバドラ等すべてこれ
これらは100% Rustが有利
(2) 既存のソフトの言語のみの置き換え
(2)-a. スクリプト言語などからの言語の置き換え
CPUやメモリの使用リソース削減が目的ならばRust化は有利
(2)-b. C/C++からの言語の置き換え
セキュリティやメモリ管理の不安定で困ってる時にRust化が有利
一般的に可能なら(2)の単なる言語間の移植よりも
設計を見直して(1)の新規作成とした方が好ましい
>>399でCloudflareがCPUメモリリソース消費1/3にできた例も
単なるC→Rustへの(2)移植ではなく
新たな設計での(1)新規作成だからであろう
(1) 新規に作るもの
CloudflareやAWSの例やゲームの新フレームワークやLinuxの新たなデバドラ等すべてこれ
これらは100% Rustが有利
(2) 既存のソフトの言語のみの置き換え
(2)-a. スクリプト言語などからの言語の置き換え
CPUやメモリの使用リソース削減が目的ならばRust化は有利
(2)-b. C/C++からの言語の置き換え
セキュリティやメモリ管理の不安定で困ってる時にRust化が有利
一般的に可能なら(2)の単なる言語間の移植よりも
設計を見直して(1)の新規作成とした方が好ましい
>>399でCloudflareがCPUメモリリソース消費1/3にできた例も
単なるC→Rustへの(2)移植ではなく
新たな設計での(1)新規作成だからであろう
416デフォルトの名無しさん
2023/11/16(木) 17:13:48.99ID:GrubNHks C/C++から書き直すにしても設計をそのまま使えないことが多いから
かなり大変なんだよな
とくに参照やポインタだらけで全部ヒープアロケーションしまくってる場合とか
C++でもその辺りポインタを多用せずスマポやスタック割り当てをうまく使って書いてあるソフトは移植しやすい
かなり大変なんだよな
とくに参照やポインタだらけで全部ヒープアロケーションしまくってる場合とか
C++でもその辺りポインタを多用せずスマポやスタック割り当てをうまく使って書いてあるソフトは移植しやすい
417デフォルトの名無しさん
2023/11/16(木) 17:41:46.11ID:cVeFFprT どの言語からでもいいけどRustに移行するのにプログラム設計もそのまま引き継いだ自動コンバージョン的な移行を想定するほうがおかしいやろ
そんなんありえんよ
そんなんありえんよ
418デフォルトの名無しさん
2023/11/16(木) 17:41:52.36ID:nV/QBQ73 C/C++にRust世代の知見が流入してくることに賭けて、待ってる勢はあるはず 自分はそう
それもあるけど、いまあるRustから前線で知見を得ようという勢もあるはず
それもあるけど、いまあるRustから前線で知見を得ようという勢もあるはず
419デフォルトの名無しさん
2023/11/16(木) 17:47:05.98ID:nV/QBQ73 >>417
C/C++もclangがいったん咀嚼してLLVMにしてる
Rustにトランスパイルするのは非現実的とまではいえないはず
うまくいけば、Linuxは一夜にしてpure Rustになる
Rust派の誰かがやるんじゃないかと思ってる
C/C++もclangがいったん咀嚼してLLVMにしてる
Rustにトランスパイルするのは非現実的とまではいえないはず
うまくいけば、Linuxは一夜にしてpure Rustになる
Rust派の誰かがやるんじゃないかと思ってる
420デフォルトの名無しさん
2023/11/16(木) 17:51:33.13ID:xS+g93Tz421デフォルトの名無しさん
2023/11/16(木) 17:55:14.82ID:GrubNHks 全てスタック変数で割り当てる
コピー時に適切なムーブをする
ヒープが必要なところはスマポを使う
これをちゃんとやればC++をrustに置き換えることは可能
しかしこれをやってるC++プロジェクトはない
コピー時に適切なムーブをする
ヒープが必要なところはスマポを使う
これをちゃんとやればC++をrustに置き換えることは可能
しかしこれをやってるC++プロジェクトはない
422デフォルトの名無しさん
2023/11/16(木) 17:56:48.64ID:GrubNHks >>420
そいつの意見を真面目に考えてて草
そいつの意見を真面目に考えてて草
423デフォルトの名無しさん
2023/11/16(木) 18:05:24.97ID:nV/QBQ73 ま、雑談だから
ストローマンは愚痴
一頃のC++はなんでもかんでもヒープに置きすぎだったよね
まあ、お膝元のスタックがそんなでかくない石・スレッドも少なくないけど
ストローマンは愚痴
一頃のC++はなんでもかんでもヒープに置きすぎだったよね
まあ、お膝元のスタックがそんなでかくない石・スレッドも少なくないけど
424デフォルトの名無しさん
2023/11/16(木) 18:12:37.43ID:C/58Cd2m425デフォルトの名無しさん
2023/11/16(木) 18:27:30.00ID:nV/QBQ73 c2rustの出力をあんまり手直しばっかりしなくていいように、
入力のCにアノテーションを加えていこう、みたいな動きは必ず出ると思うんだよね
良くも悪くもCはマクロ世界だから、当面関わってない人には影響ゼロなようにも書けるはず
そのアノテーションが、そのまま、safe C の礎になればいいんだよ
入力のCにアノテーションを加えていこう、みたいな動きは必ず出ると思うんだよね
良くも悪くもCはマクロ世界だから、当面関わってない人には影響ゼロなようにも書けるはず
そのアノテーションが、そのまま、safe C の礎になればいいんだよ
426デフォルトの名無しさん
2023/11/16(木) 18:28:02.28ID:jjq/yUIi ああ、ストローマンは自動コンバージョンに反応したのか
“的な”の意味が通じなかったんだな
“的な”の意味が通じなかったんだな
427デフォルトの名無しさん
2023/11/16(木) 18:39:53.99ID:RH2XyDS1 >>397
記事を読めてないバカを晒すスレはここですか?
記事を読めてないバカを晒すスレはここですか?
428デフォルトの名無しさん
2023/11/16(木) 18:40:10.28ID:U5aa+aRa LinuxはスクリプトとCの二刀流だ
PythonとCの関係はRustとCの関係にも使える
その知見が流入してこない原因はスクリプト不要論だろう
PythonとCの関係はRustとCの関係にも使える
その知見が流入してこない原因はスクリプト不要論だろう
429デフォルトの名無しさん
2023/11/16(木) 20:51:00.53ID:AwpJQf7l >>423
だがスマートポインタはスタックに置いて参照渡ししたい。
だがスマートポインタはスタックに置いて参照渡ししたい。
430デフォルトの名無しさん
2023/11/16(木) 23:13:12.09ID:BwM227bO >>425
Cの安全性を高める目的ならトランスパイラではなく静的コード解析ツール用にアノテーションするほうが遥かに簡単
C++と同じようにCにもそういう動きが出てくる可能性はあると思う
ただ安全性を高めようとすればするほど既存のコードとはかけ離れていくからMISRAのように標準化され半強制的なものにならない限り広く受け入れられる気がしない
イメージ的には↓こういうやつ
浸透するとしても10年以上先だろうね
https://www.youtube.com/watch?v=Pk2RAl8kG1o
Cの安全性を高める目的ならトランスパイラではなく静的コード解析ツール用にアノテーションするほうが遥かに簡単
C++と同じようにCにもそういう動きが出てくる可能性はあると思う
ただ安全性を高めようとすればするほど既存のコードとはかけ離れていくからMISRAのように標準化され半強制的なものにならない限り広く受け入れられる気がしない
イメージ的には↓こういうやつ
浸透するとしても10年以上先だろうね
https://www.youtube.com/watch?v=Pk2RAl8kG1o
431デフォルトの名無しさん
2023/11/16(木) 23:35:15.35ID:nxuWB9A/ そこで奥さんChat-GPTですよ!
432デフォルトの名無しさん
2023/11/16(木) 23:43:26.30ID:4If2hIRf433デフォルトの名無しさん
2023/11/17(金) 00:28:52.66ID:XzLpc9VL Cは他のお笑い言語とは違って俺が最初に手に取ったK&R第二版から変える必要無かったからな
434デフォルトの名無しさん
2023/11/17(金) 00:34:46.03ID:UIKq6eA7435デフォルトの名無しさん
2023/11/17(金) 00:41:31.13ID:ofj+MCpV C++もlifetime annotationどうするか決まってないんだな
一番めんどくさくてコードも汚くなる部分だからannotation周りの評価はlifetime+borrow checkerの出来次第だと思ってる
https://discourse.llvm.org/t/rfc-lifetime-annotations-for-c/61377
一番めんどくさくてコードも汚くなる部分だからannotation周りの評価はlifetime+borrow checkerの出来次第だと思ってる
https://discourse.llvm.org/t/rfc-lifetime-annotations-for-c/61377
436デフォルトの名無しさん
2023/11/17(金) 01:27:31.74ID:lIdOKj8F やる気が暴走したPerlとかC++とかを過大評価するのは暑苦しい
やる気以外のルールはないのか
やる気以外のルールはないのか
437デフォルトの名無しさん
2023/11/17(金) 05:30:59.53ID:30xMjeDv あー、Perlも好きだわーw
ドザなので、シェルスクリプト代わりに、中途半端な処理は全部お願いしてる
ドザなので、シェルスクリプト代わりに、中途半端な処理は全部お願いしてる
438デフォルトの名無しさん
2023/11/17(金) 10:14:27.25ID:vs9w0Abf >>436
無能な働き者がやる気を出すとね……
無能な働き者がやる気を出すとね……
439デフォルトの名無しさん
2023/11/17(金) 21:12:15.87ID:+5SAg77h NGINXモジュールがRustで書けるようになった
https://www.infoq.com/jp/news/2023/11/nginx-modules-rust/
https://www.infoq.com/jp/news/2023/11/nginx-modules-rust/
440デフォルトの名無しさん
2023/11/17(金) 22:09:06.15ID:HoPy7y+y441デフォルトの名無しさん
2023/11/17(金) 23:36:50.31ID:FMmcnveO >>436
その2言語は増築工事でダメになった
その2言語は増築工事でダメになった
442デフォルトの名無しさん
2023/11/17(金) 23:58:55.97ID:8WHR7HZ4 継承でダメになった、と言った?
ほぼそれに近い?
ほぼそれに近い?
443デフォルトの名無しさん
2023/11/18(土) 11:21:22.60ID:ZyDTP43o 立場によってはそう
継承に親でも殺されたんかって人なら、そう言うだろう
でもそれ、自分の推しの言語に継承かなにかが後出し採用されたら、ブーメランだぞw
継承に親でも殺されたんかって人なら、そう言うだろう
でもそれ、自分の推しの言語に継承かなにかが後出し採用されたら、ブーメランだぞw
444デフォルトの名無しさん
2023/11/18(土) 11:36:22.09ID:XY0Izw3X クラス継承(実装継承)は悪でプログラミング言語界が一致してるから後から継承の採用はないだろうな
過去のしがらみで継承を採用したSwiftやKotlinですら継承を使わずに済む機構などを採り入れている
過去のしがらみで継承を採用したSwiftやKotlinですら継承を使わずに済む機構などを採り入れている
445デフォルトの名無しさん
2023/11/18(土) 11:44:56.68ID:GRi2RJZB446デフォルトの名無しさん
2023/11/18(土) 11:52:32.21ID:GRi2RJZB 言語のユーザ数の増加要因として最大なのはユーザー数だよ
447デフォルトの名無しさん
2023/11/18(土) 11:58:51.53ID:63IqxYSZ >>446
頭沸いてんのかおまえ、進次郎かよw
頭沸いてんのかおまえ、進次郎かよw
448デフォルトの名無しさん
2023/11/18(土) 12:08:09.00ID:Q9aHTM00 それがわからんようでは、いっしょに旨い酒は呑めんなあw
わかれよーわかりきってんだろ再帰だろ
わかれよーわかりきってんだろ再帰だろ
449デフォルトの名無しさん
2023/11/18(土) 12:11:13.74ID:GRi2RJZB >>447
微分積分はまだなのかな?
微分積分はまだなのかな?
450デフォルトの名無しさん
2023/11/18(土) 12:11:30.53ID:63IqxYSZ ユーザー数の多いアプリやOSの開発言語が言語利用者数に影響してるんだろうがいw
451デフォルトの名無しさん
2023/11/18(土) 12:22:30.52ID:moXb3tPD 方法が違うだけでRustやGoにも実装継承が採用されてる
SwiftやKotlinは過去のしがらみで実装継承を採用してるわけではない
目的に対して有益だから採用してるだけ
実装継承の乱用するやつも悪だと決めつけるやつも中身を理解してないという意味では同類だから
どの言語を使っていようがどちらも採用してはいけない
SwiftやKotlinは過去のしがらみで実装継承を採用してるわけではない
目的に対して有益だから採用してるだけ
実装継承の乱用するやつも悪だと決めつけるやつも中身を理解してないという意味では同類だから
どの言語を使っていようがどちらも採用してはいけない
452デフォルトの名無しさん
2023/11/18(土) 12:22:47.39ID:GRi2RJZB453デフォルトの名無しさん
2023/11/18(土) 12:27:30.14ID:63IqxYSZ454デフォルトの名無しさん
2023/11/18(土) 12:29:23.25ID:63IqxYSZ しかし、パラメータの意味も説明も無くいきなり数式出す奴ってなんなの?
455デフォルトの名無しさん
2023/11/18(土) 12:31:03.67ID:jiGs7deg456デフォルトの名無しさん
2023/11/18(土) 12:35:26.40ID:Q9aHTM00 継承はダメおじさん「継承はダメ」
IUnk教徒俺「うんこ->Release();」
IUnk教徒俺「うんこ->Release();」
457デフォルトの名無しさん
2023/11/18(土) 12:38:02.55ID:GRi2RJZB458デフォルトの名無しさん
2023/11/18(土) 12:38:26.91ID:63IqxYSZ 多段継承は何だかなぁだけど
単純な基礎クラスに応用クラス乗せるくらいは許して欲しいなぁ
単純な基礎クラスに応用クラス乗せるくらいは許して欲しいなぁ
459デフォルトの名無しさん
2023/11/18(土) 12:39:14.68ID:GRi2RJZB460デフォルトの名無しさん
2023/11/18(土) 12:40:04.55ID:63IqxYSZ461デフォルトの名無しさん
2023/11/18(土) 12:41:04.57ID:63IqxYSZ >>459
dは何よ?
dは何よ?
462デフォルトの名無しさん
2023/11/18(土) 12:42:08.12ID:Q9aHTM00 ダァン! ってやつだ
俺が考えた
俺が考えた
464デフォルトの名無しさん
2023/11/18(土) 12:49:36.30ID:zRkY2vB2465デフォルトの名無しさん
2023/11/18(土) 12:49:49.32ID:63IqxYSZ >>463
ならば進次郎にも分かる説明でないとダメだろ
ならば進次郎にも分かる説明でないとダメだろ
467デフォルトの名無しさん
2023/11/18(土) 12:55:17.22ID:63IqxYSZ >>466
だからそれは否定されたろ
だからそれは否定されたろ
468デフォルトの名無しさん
2023/11/18(土) 12:56:30.92ID:GRi2RJZB >>467
誰に?
誰に?
469デフォルトの名無しさん
2023/11/18(土) 12:56:35.04ID:zRkY2vB2 仕事で使う技術選定の最大要因ってなんだかんだで利用者数の多さ(≒資料の多さ)になりがち
470デフォルトの名無しさん
2023/11/18(土) 12:57:39.99ID:63IqxYSZ >>468
俺にw
俺にw
471デフォルトの名無しさん
2023/11/18(土) 12:59:42.63ID:GRi2RJZB472デフォルトの名無しさん
2023/11/18(土) 13:00:29.94ID:9pS/cQYo >>461
ワロタ
ワロタ
473デフォルトの名無しさん
2023/11/18(土) 13:03:35.26ID:63IqxYSZ C++の資料なんか腐るほどあるが
今やC#かCしか生き残って無いだろw
今やC#かCしか生き残って無いだろw
474デフォルトの名無しさん
2023/11/18(土) 13:05:11.55ID:63IqxYSZ Rustなんて使わなきや開発出来ないアプリなんか無いし
使う事は未来永劫無いだろうね
使う事は未来永劫無いだろうね
475デフォルトの名無しさん
2023/11/18(土) 13:06:24.64ID:9pS/cQYo 書けない人がいくら叫んでも無駄
476デフォルトの名無しさん
2023/11/18(土) 13:09:08.70ID:9pS/cQYo Rust書けないからって嫉妬してるのはわかるけどそこまで逆恨みすることはないじゃん?
477デフォルトの名無しさん
2023/11/18(土) 13:09:45.32ID:9pS/cQYo それともここで煽られたから「Rustを書いてる人」が嫌いなのかな?
478デフォルトの名無しさん
2023/11/18(土) 13:42:18.00ID:GRi2RJZB >>473
Debian bookwormのfirefox-esrのソースのうちcとc++を比較すると
ヘッダは区別がつかないので除外して
$ apt source firefox-esr
$ find firefox-esr-115.4.0esr -name *.cpp -o -name *.cxx | xargs cat | wc -l
4766467
$ find firefox-esr-115.4.0esr -name *.c | xargs cat | wc -l
3598263
4766467 / 3598263 = 1.3... C++がCの1.3倍程度
C++はヘッダのみで実装してしまうことも多々あるから1.3倍では済まないだろう
C++の方が多いのだよ
Rustは>>366に書いた通り全体の15%程度(総本山なのに)
Debian bookwormのfirefox-esrのソースのうちcとc++を比較すると
ヘッダは区別がつかないので除外して
$ apt source firefox-esr
$ find firefox-esr-115.4.0esr -name *.cpp -o -name *.cxx | xargs cat | wc -l
4766467
$ find firefox-esr-115.4.0esr -name *.c | xargs cat | wc -l
3598263
4766467 / 3598263 = 1.3... C++がCの1.3倍程度
C++はヘッダのみで実装してしまうことも多々あるから1.3倍では済まないだろう
C++の方が多いのだよ
Rustは>>366に書いた通り全体の15%程度(総本山なのに)
479デフォルトの名無しさん
2023/11/18(土) 14:46:30.05ID:BPYzRrhj それ過去に開発された言語が混ざってるよね?
480デフォルトの名無しさん
2023/11/18(土) 15:41:41.81ID:aHGnQ9F/ もうすでに15%もあるといった考え方は?現状の%を並べても5年どうなるかわからないんだし。
その調べかたからわかるのことは限定的だな。
その割合が年々減っていってるのならRustはだめだろうし。
その調べかたからわかるのことは限定的だな。
その割合が年々減っていってるのならRustはだめだろうし。
481デフォルトの名無しさん
2023/11/18(土) 16:00:47.99ID:Q+v8Z7oO 言語の変更は多くの場合システム改新などコードを書き換えるタイミングで行なわれる
また言語の変更をするか否かに関係なくモノリシックなシステムはシステム改新に不利でその点ではマイクロサービスなど多数で構成されるシステムが有利
OSカーネルやWebブラウザも同様でモノリシックに作られている場合は言語の変更に最も適していない
そのような最も適していない極端な特殊例を持ち出して数え上げることは無意味で無駄な行為
また言語の変更をするか否かに関係なくモノリシックなシステムはシステム改新に不利でその点ではマイクロサービスなど多数で構成されるシステムが有利
OSカーネルやWebブラウザも同様でモノリシックに作られている場合は言語の変更に最も適していない
そのような最も適していない極端な特殊例を持ち出して数え上げることは無意味で無駄な行為
482デフォルトの名無しさん
2023/11/18(土) 17:15:55.14ID:rXJKESWN 一眼観て微分方程式だと判らないレベルの人は黙っていて欲しい
483デフォルトの名無しさん
2023/11/18(土) 19:58:38.30ID:HxfHsjDi それはわかったけど、英語そんな読めない俺、なんも言えず
教えてもらったRustの再評価? 論文、積ん読になってるんだよねえ
面白そうだったから忘れたことはないけど
教えてもらったRustの再評価? 論文、積ん読になってるんだよねえ
面白そうだったから忘れたことはないけど
484デフォルトの名無しさん
2023/11/18(土) 21:45:39.76ID:0cWoHYmK485デフォルトの名無しさん
2023/11/18(土) 22:49:22.88ID:zlAHanIg モダンなプログラミング言語のうち、
過去のしがらみのある2つの言語を除いて、
すべての言語が継承をクラスごと排除して採用していないもんな
過去のしがらみのある2つの言語を除いて、
すべての言語が継承をクラスごと排除して採用していないもんな
486デフォルトの名無しさん
2023/11/18(土) 22:53:24.96ID:GRi2RJZB >>485
おかげで全てマイナー言語のままじゃん?
おかげで全てマイナー言語のままじゃん?
487デフォルトの名無しさん
2023/11/18(土) 23:39:14.05ID:Wj/Y5gpw 切捨ては極端すぎる。まるで都合の悪いことは無かったことにする左翼の思想
継承はあった方が便利なんだよ
元々オブシコは継承機能が売りだったのに手のひら返してやっぱ合成でいいって、それC言語でもできることだし…
先祖返り…デグレード…設計ミスってことぉ?
継承はあった方が便利なんだよ
元々オブシコは継承機能が売りだったのに手のひら返してやっぱ合成でいいって、それC言語でもできることだし…
先祖返り…デグレード…設計ミスってことぉ?
488デフォルトの名無しさん
2023/11/18(土) 23:51:56.62ID:WzRKAbU/ 2010年以降にできた言語で広く使われてるのは
Kotlin, Swift, Dart, TypeScriptらのクラス継承のある言語
Kotlin, Swift, Dart, TypeScriptらのクラス継承のある言語
489デフォルトの名無しさん
2023/11/19(日) 00:04:07.84ID:QnG3yXze 型のgeneralization/specializationはどの言語でも必須と言っていい機能でspecializeされた型でgeneralな型の実装を再利用できるというのは物凄く直感的でわかりやすく便利な機能だから完全に無くせば利便性を損なうだけ
Rustでも形を変えて実装継承が存在するのはそのため
Rustでも形を変えて実装継承が存在するのはそのため
490デフォルトの名無しさん
2023/11/19(日) 04:16:47.88ID:RVJYDbf6 >>489
実装継承は問題点が多すぎるからRustでは採用されていない
実装継承とはある型で定義されたメソッド実装がその型を継承する別の型にそのまま継承されること
Rustは実装継承をちゃんと排除している
実装継承は問題点が多すぎるからRustでは採用されていない
実装継承とはある型で定義されたメソッド実装がその型を継承する別の型にそのまま継承されること
Rustは実装継承をちゃんと排除している
491デフォルトの名無しさん
2023/11/19(日) 10:00:16.37ID:tWthAkiw492デフォルトの名無しさん
2023/11/19(日) 10:14:54.62ID:xroD2KWj 継承が必須という人は>191 >195 >204に反論してくれんかね?
shared_ptr<function<T>>で、Tをコンセプトに拡張したものがイメージかね。コンセプトに合致する「インスタンス」なら何でも変数に代入できるようにできれば、わざわざ継承で「インスタンス」の代入可能性を確保する必要は無い。
shared_ptr<function<T>>で、Tをコンセプトに拡張したものがイメージかね。コンセプトに合致する「インスタンス」なら何でも変数に代入できるようにできれば、わざわざ継承で「インスタンス」の代入可能性を確保する必要は無い。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国の局長は「両手をポケット」で対峙 宣伝戦で国民に示す ★3 [蚤の市★]
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 ★4 [ぐれ★]
- 【音楽】Perfume・あ~ちゃんの結婚相手「一般男性」は吉田カバンの社長・吉田幸裕氏(41) 高身長で山本耕史似 [Ailuropoda melanoleuca★]
- 映画「鬼滅の刃」の興行収入急減、日本行き航空券大量キャンセル…中国メディア報道 [蚤の市★]
- 「タワマン天国」に飛びつく若者…SNSに転がる「成功体験」に続けるのか 湾岸エリアの業者が語った現実 [蚤の市★]
- 【カブス】今永昇太 1年約34億円で残留へ QO受諾 米メディア報じる [鉄チーズ烏★]
- 【悲報】おこめ券、9.5億円配布分のうち2.4億が経費、うちJAが1億円中抜き🤗高市ありがとう [359965264]
- 【悲報】高市有事で日本に同調する国、1つも現れないwwwwwwwwwwwwwww [603416639]
- 【雑談】暇人集会所part19
- 不知火フレア、尾丸ポルカ、星街すいせい、さくらみこ、白銀ノエル「「「「「お前くんっ!結婚して!」」」」」←誰を選ぶ?
- 自閉症が「んなっしょい」と連呼するお🏡
- ブラックフライデーでダークソウル買って初プレイしてみようかなと思うけどどうかな
