「C++の色々配慮してめんどくさい感じは好きだけど、実務になったらメモリ安全性とか考えて今後Rustに変わっていくんかな」
「うだうだ言ってないで仕事で必要なのをやればいいんだよ、趣味なら好きなのやればいい」
っていうスレ。
前スレ: 結局C++とRustってどっちが良いの?
https://mevius.5ch.net/test/read.cgi/tech/1677286186/
探検
結局C++とRustってどっちが良いの? 2traits
■ このスレッドは過去ログ倉庫に格納されています
2023/04/02(日) 00:42:57.53ID:W9/nq+tL
2023/04/02(日) 00:51:09.64ID:LXNgvG55
世界的にインフラはRust製になりつつある
https://japan.zdnet.com/article/35183866/
Amazon Web Services(AWS)は、同社のエンジニアたちがプログラミング言語「Rust」を
使っている大きな理由として、エネルギー効率の高さを挙げる。
AWSは早くからRustを採用し、Rust Foundationの創設にも携わった。
現在もRustの普及に熱心に取り組んでいる。
AWSのソフトウェアエンジニアで、Rustの普及に取り組む
Shane Miller氏と主任エンジニアのCarl Lerche氏の投稿によれば、
Rustはメモリー安全性を高め、セキュリティ関連の不具合を減らす役に立つだけでなく、
PythonやJavaよりもはるかに「エネルギー効率に優れている」という。
Amazonは、2025年までにデータセンターの100%を再生エネルギーでまかなうという目標を掲げ、
データセンターの環境負荷の軽減に取り組んでいる。
Rustの採用はその一翼を担うという。
Rustで構築されたAWSサービスの例としては、
コンテナーアプリ用のサーバーレスプラットフォーム「Lamba」を支える「Firecracker」、
「Amazon Simple Storage Service(S3)」「Amazon Elastic Compute Cloud(EC2)」、
コンテンツ配信ネットワーク「Amazon CloudFront」、
LinuxベースのコンテナーOS「Bottlerocket」がある。
「CやRustが他の言語よりもエネルギー効率に優れていることに驚きはない。
衝撃的なのは、その違いの大きさだ。CとRustを広範に採用すれば、
控えめに見積もってもコンピュートに使用されるエネルギーの量を50%削減できる可能性がある」と
Miller氏は述べ、その根拠として、C、GoogleのGo、Lua、Python、Ruby、Fortranなどをはじめとする
複数の言語のエネルギー効率を相対的に示した研究結果を紹介している。
https://japan.zdnet.com/article/35183866/
Amazon Web Services(AWS)は、同社のエンジニアたちがプログラミング言語「Rust」を
使っている大きな理由として、エネルギー効率の高さを挙げる。
AWSは早くからRustを採用し、Rust Foundationの創設にも携わった。
現在もRustの普及に熱心に取り組んでいる。
AWSのソフトウェアエンジニアで、Rustの普及に取り組む
Shane Miller氏と主任エンジニアのCarl Lerche氏の投稿によれば、
Rustはメモリー安全性を高め、セキュリティ関連の不具合を減らす役に立つだけでなく、
PythonやJavaよりもはるかに「エネルギー効率に優れている」という。
Amazonは、2025年までにデータセンターの100%を再生エネルギーでまかなうという目標を掲げ、
データセンターの環境負荷の軽減に取り組んでいる。
Rustの採用はその一翼を担うという。
Rustで構築されたAWSサービスの例としては、
コンテナーアプリ用のサーバーレスプラットフォーム「Lamba」を支える「Firecracker」、
「Amazon Simple Storage Service(S3)」「Amazon Elastic Compute Cloud(EC2)」、
コンテンツ配信ネットワーク「Amazon CloudFront」、
LinuxベースのコンテナーOS「Bottlerocket」がある。
「CやRustが他の言語よりもエネルギー効率に優れていることに驚きはない。
衝撃的なのは、その違いの大きさだ。CとRustを広範に採用すれば、
控えめに見積もってもコンピュートに使用されるエネルギーの量を50%削減できる可能性がある」と
Miller氏は述べ、その根拠として、C、GoogleのGo、Lua、Python、Ruby、Fortranなどをはじめとする
複数の言語のエネルギー効率を相対的に示した研究結果を紹介している。
2023/04/02(日) 01:05:56.12ID:fga+vqS0
なぜ皆がC++を捨ててRustへ移行していくのか以前は不思議だったが
Rustも書くようになってようやく理由がわかった
色んな面で快適になっている
Rustも書くようになってようやく理由がわかった
色んな面で快適になっている
2023/04/02(日) 02:18:47.84ID:6FtsW5Qy
Rustは高機能に洗練されていて意外にコンパクトだね
C++では同じことを出来ないも多くて何とか出来ることもC++17やC++20の知識が必要で普及していなかったり
どちらにも新規な人ならRustの方が学習量が少なくて済むね
C++では同じことを出来ないも多くて何とか出来ることもC++17やC++20の知識が必要で普及していなかったり
どちらにも新規な人ならRustの方が学習量が少なくて済むね
2023/04/02(日) 02:37:50.83ID:Xkdfgrgv
=== 複製おじさん(通称複おじ)について ===
Rustスレを中心に活動し、2023年4月現在で1年以上ム板に住み着くRustacean。無自覚な荒らし。
Rustスレでは、基本的に他住民の意見を聞いて糧とすることなく、自らのコードが最善であると、ID変更自演を交えいつまでも主張し続ける。
同スレで「所有権が複製される」という違和感のある表現を、「違和感がある」とする他住民の意見をすべて否定してしつこく擁護し続けたことから、「複製おじさん」というあだ名が付けられた。
それ以外のム板スレでは、基本的に他住民の意見を聞いて糧とすることなく、Rustこそが最善であると、ID変更自演を交えいつまでも主張し続ける。
その基本戦術は、「GC言語は遅い」の一声でC/C++/Rust以外の言語を否定し、残ったC/C++は安全ではないので、Rustが最善であるとするもの。
しかしながら、Rust以外の言語に関しては、正当な批判を展開するのに十分な知識を持っているとは言いがたい。
本スレPart1では、C++の問題点を指摘しようとして多数の誤り・知識不足を露呈することとなった。特にしつこく食い下がったのが「動的ディスパッチ」に関する誤解である。
https://mevius.5ch.net/test/read.cgi/tech/1677286186/786-799(ID:Evbafc70とID:RiLc+pIfが複製おじさんであると考えられている)
要約すると、通常「条件分岐」と呼ばれるものを「動的ディスパッチ」と呼ぶのが正しいと主張し続けたのである。
常識的にはあり得ない誤解だが、提示されたC++のコードが自らの主張(C++にはパターンマッチが無い)に不都合であると感じたためか、C++のコードを正しく読み解くことができないにもかかわらず脊髄反射的に否定してしまい、その根拠として誤った論理をこじつけてしまったものと思われる。
ちなみにこの後、同種の誤解を持って書き込むID:wHEiYRW7(これはID使用歴的に複製おじさんとは考えにくい)に対して、正しい理解に基づく指摘を行う単発IDが複数出現するが、この中にも複製おじさんが多数含まれていると考えられている。
このように自分の誤りを認識した場合、それを認める書き込みは決して行わず、別人の振りをして最初から正しく理解していた体を装うのも複製おじさんの特徴である。
Rustスレを中心に活動し、2023年4月現在で1年以上ム板に住み着くRustacean。無自覚な荒らし。
Rustスレでは、基本的に他住民の意見を聞いて糧とすることなく、自らのコードが最善であると、ID変更自演を交えいつまでも主張し続ける。
同スレで「所有権が複製される」という違和感のある表現を、「違和感がある」とする他住民の意見をすべて否定してしつこく擁護し続けたことから、「複製おじさん」というあだ名が付けられた。
それ以外のム板スレでは、基本的に他住民の意見を聞いて糧とすることなく、Rustこそが最善であると、ID変更自演を交えいつまでも主張し続ける。
その基本戦術は、「GC言語は遅い」の一声でC/C++/Rust以外の言語を否定し、残ったC/C++は安全ではないので、Rustが最善であるとするもの。
しかしながら、Rust以外の言語に関しては、正当な批判を展開するのに十分な知識を持っているとは言いがたい。
本スレPart1では、C++の問題点を指摘しようとして多数の誤り・知識不足を露呈することとなった。特にしつこく食い下がったのが「動的ディスパッチ」に関する誤解である。
https://mevius.5ch.net/test/read.cgi/tech/1677286186/786-799(ID:Evbafc70とID:RiLc+pIfが複製おじさんであると考えられている)
要約すると、通常「条件分岐」と呼ばれるものを「動的ディスパッチ」と呼ぶのが正しいと主張し続けたのである。
常識的にはあり得ない誤解だが、提示されたC++のコードが自らの主張(C++にはパターンマッチが無い)に不都合であると感じたためか、C++のコードを正しく読み解くことができないにもかかわらず脊髄反射的に否定してしまい、その根拠として誤った論理をこじつけてしまったものと思われる。
ちなみにこの後、同種の誤解を持って書き込むID:wHEiYRW7(これはID使用歴的に複製おじさんとは考えにくい)に対して、正しい理解に基づく指摘を行う単発IDが複数出現するが、この中にも複製おじさんが多数含まれていると考えられている。
このように自分の誤りを認識した場合、それを認める書き込みは決して行わず、別人の振りをして最初から正しく理解していた体を装うのも複製おじさんの特徴である。
2023/04/02(日) 02:38:05.99ID:Xkdfgrgv
テンプレに入れといていいよ
2023/04/02(日) 02:43:43.18ID:zOLTjxu5
C++は確実に滅びる
各種安全性が保証されているRust製と穴を多発してきたC++製
企業や国自治体がどちらを選ぶか明らか
いずれ要件にも入るだろう
各種安全性が保証されているRust製と穴を多発してきたC++製
企業や国自治体がどちらを選ぶか明らか
いずれ要件にも入るだろう
2023/04/02(日) 03:06:04.77ID:WdMf4Ye5
>>5
おいおい!処理を切り替えること一般をディスパッチ
その実装をディスパッチャと言うんだよ
ifやmatchなどの条件分岐はやっていることはディスパッチャだよ
実行時にやっているから動的ディスパッチ
仮想関数テーブルを介した関数の呼び出しの切り替えも動的ディスパッチ
一方で関数のオーバーロードによる切り替えは
コンパイル時に決まるので静的ディスパッチと言う
おいおい!処理を切り替えること一般をディスパッチ
その実装をディスパッチャと言うんだよ
ifやmatchなどの条件分岐はやっていることはディスパッチャだよ
実行時にやっているから動的ディスパッチ
仮想関数テーブルを介した関数の呼び出しの切り替えも動的ディスパッチ
一方で関数のオーバーロードによる切り替えは
コンパイル時に決まるので静的ディスパッチと言う
2023/04/02(日) 03:40:43.33ID:IfuIFZxt
GoogleとMicrosoftで脆弱性の70%がメモリー管理バグに起因のためRust採用
https://xtech.nikkei.com/atcl/nxt/column/18/00692/042700054/
Rustは、プログラムに必要なメモリーの確保や解放に関連するバグが生じない「メモリー安全」が保証されたプログラミング言語である。
それに対してこれまでのOS開発に使われてきたC/C++は「大規模な開発においてメモリー安全なコードを記述することがほぼ不可能」
(Microsoftのブログ「We need a safer systems programming language」出典)だという。
GoogleによればAndroidに存在した深刻なセキュリティー脆弱性の70%近くがメモリー安全に関するバグに起因するという。
同様にMicrosoftも、同社製品に存在したセキュリティー脆弱性の70%がメモリー安全に関するバグに起因すると述べている。
C/C++を使う限りセキュリティー脆弱性を根絶するのは不可能と考えて、Rustを採用するに至ったというわけだ。
https://xtech.nikkei.com/atcl/nxt/column/18/00692/042700054/
Rustは、プログラムに必要なメモリーの確保や解放に関連するバグが生じない「メモリー安全」が保証されたプログラミング言語である。
それに対してこれまでのOS開発に使われてきたC/C++は「大規模な開発においてメモリー安全なコードを記述することがほぼ不可能」
(Microsoftのブログ「We need a safer systems programming language」出典)だという。
GoogleによればAndroidに存在した深刻なセキュリティー脆弱性の70%近くがメモリー安全に関するバグに起因するという。
同様にMicrosoftも、同社製品に存在したセキュリティー脆弱性の70%がメモリー安全に関するバグに起因すると述べている。
C/C++を使う限りセキュリティー脆弱性を根絶するのは不可能と考えて、Rustを採用するに至ったというわけだ。
2023/04/02(日) 06:32:11.07ID:kYGqyW3R
>「業界談義」、愚痴はプログラマー板へどうぞ。
板ルールが読めない池沼
そしてプログラム書けずにドヤ顔で役に立たない長文書くバカ
板ルールが読めない池沼
そしてプログラム書けずにドヤ顔で役に立たない長文書くバカ
2023/04/02(日) 06:39:50.05ID:M90rTQGQ
大手IT企業は揃ってC++ではダメだと判断してRustへ移行しつつあるのに
底辺は真逆でRustはダメでC++に拘るのはなぜ?
底辺は真逆でRustはダメでC++に拘るのはなぜ?
2023/04/02(日) 06:53:36.16ID:W9/nq+tL
あっちにもスレあったんだけどね、あんま流行ってなかったから
マの問題じゃない、言語がイイんだ! ってgdgdやるのがいいみたいだ
Google&MS「バグの70%はC/C++。Rustにする」
https://medaka.5ch.net/test/read.cgi/prog/1619943288/
ほんとにマの問題なら、>>1 で終わってしまうw
マの問題じゃない、言語がイイんだ! ってgdgdやるのがいいみたいだ
Google&MS「バグの70%はC/C++。Rustにする」
https://medaka.5ch.net/test/read.cgi/prog/1619943288/
ほんとにマの問題なら、>>1 で終わってしまうw
2023/04/02(日) 06:54:05.31ID:W9/nq+tL
2023/04/02(日) 08:05:56.68ID:O/tjJbYW
2023/04/02(日) 08:13:05.31ID:W9/nq+tL
Rustは難しくない。そうだろ?
大手が本格的に移行しはじめてからでも、全然遅かねえんだよ
ま、C++を捨てられないってのは、このスレだけの内緒だけどな!
大手が本格的に移行しはじめてからでも、全然遅かねえんだよ
ま、C++を捨てられないってのは、このスレだけの内緒だけどな!
2023/04/02(日) 08:16:48.61ID:W9/nq+tL
Rustに移行ってのは、採用された程度じゃ移行じゃない
APIに、Rustの所有権・マルチスレッド関係のシグネチャが付くようになって、ようやっとだ
その日はくる
そして、Rustの独占は揺らぐ
APIに、Rustの所有権・マルチスレッド関係のシグネチャが付くようになって、ようやっとだ
その日はくる
そして、Rustの独占は揺らぐ
2023/04/02(日) 08:25:23.82ID:W9/nq+tL
C++を捨てたんなら、no_mangle とか、まさか、extern "C" とかいう呪詛を唱えてないよな?
移行っていう以上、そういうの要らないんだよ
C++が、こっちから適合してやっからよ
移行っていう以上、そういうの要らないんだよ
C++が、こっちから適合してやっからよ
2023/04/02(日) 10:39:13.92ID:Xkdfgrgv
複おじはね、承認に飢えた構ってちゃんなのよ
この紛うことなきクソスレを隔離スレ化して構い続けてあげれば、他スレの被害を最小限にできるって寸法よ
こんなクソゴミスレを存続させる意義はここにある
君たちも>>5は知識として覚えておいて、そこらでそれっぽい書き込みを見ても一切反応しちゃいけないぞ
この紛うことなきクソスレを隔離スレ化して構い続けてあげれば、他スレの被害を最小限にできるって寸法よ
こんなクソゴミスレを存続させる意義はここにある
君たちも>>5は知識として覚えておいて、そこらでそれっぽい書き込みを見ても一切反応しちゃいけないぞ
2023/04/02(日) 10:48:26.80ID:W9/nq+tL
ディスパッチはディスパッチだろ、くらいに思ってたのに、
Rustの優位性を説明するキーワードのひとつなのね
もうちょっと勉強してからそのへんはゆっくり読む罠 ついていけん
C++を捨てろって言われると猛然と怒るけど、
じゃRust使わないのかって聞かれると、いやじゃんじゃん使うよ必要ならって答える
それがC++er
Rustの優位性を説明するキーワードのひとつなのね
もうちょっと勉強してからそのへんはゆっくり読む罠 ついていけん
C++を捨てろって言われると猛然と怒るけど、
じゃRust使わないのかって聞かれると、いやじゃんじゃん使うよ必要ならって答える
それがC++er
20デフォルトの名無しさん
2023/04/02(日) 11:14:49.29ID:3BWJUO+j >>5
よくまとまってる
よくまとまってる
21デフォルトの名無しさん
2023/04/02(日) 12:12:13.50ID:nLGbG+/r >>19
>Rustの優位性を説明するキーワードのひとつなのね
静的ディスパッチ/動的ディスパッチの違いは
基本としておさえておくべきポイントというだけで
Rustに明確な優位性があるわけではないよ
vtableの持ち方の違いもトレードオフだから
何に重きを置くかによってRustがやや有利な場合もあればC++が有利な場合もある
>Rustの優位性を説明するキーワードのひとつなのね
静的ディスパッチ/動的ディスパッチの違いは
基本としておさえておくべきポイントというだけで
Rustに明確な優位性があるわけではないよ
vtableの持ち方の違いもトレードオフだから
何に重きを置くかによってRustがやや有利な場合もあればC++が有利な場合もある
22デフォルトの名無しさん
2023/04/02(日) 12:30:32.66ID:hC5sLbbp しゃぶれよ
2023/04/02(日) 13:40:35.10ID:Ky8sq4kq
>前スレ
>Rust派は、Rustなら、必ず・全部安全
doubt
>Rust派は、Rustなら、必ず・全部安全
doubt
2023/04/02(日) 14:12:33.01ID:W9/nq+tL
そりゃC++よりは安全だろうけど
少なくともメモリ管理において、Rustの安全性って、数学的に保証されるものなの?
少なくともメモリ管理において、Rustの安全性って、数学的に保証されるものなの?
25デフォルトの名無しさん
2023/04/02(日) 14:28:31.37ID:PHqZc/RR >>24
定義次第だと思うのでメモリ管理以外で「安全性が数学的に保証されてる」と思ってる例をいくつかあげてみて
定義次第だと思うのでメモリ管理以外で「安全性が数学的に保証されてる」と思ってる例をいくつかあげてみて
2023/04/02(日) 14:50:01.38ID:W9/nq+tL
あ、わかった
Rustがsafeといっても、定義次第なんだね
Rustがsafeといっても、定義次第なんだね
2023/04/02(日) 15:21:53.12ID:guRaVpcO
ちんぽこ
2023/04/02(日) 16:06:16.39ID:ZsGOmlxy
キチガイの巣
29デフォルトの名無しさん
2023/04/02(日) 16:26:16.23ID:7EJ8Bgwe >>26
Rustに関係なく「安全かどうか」は定義次第だからね
Rustに関係なく「安全かどうか」は定義次第だからね
2023/04/02(日) 16:48:24.56ID:W9/nq+tL
ていうか、こっちに定義を聞いてこられても困るんだよね
この定義において、Rustはここまで安全、って言ってもらえると、それを遵守するんだから
この定義において、Rustはここまで安全、って言ってもらえると、それを遵守するんだから
31デフォルトの名無しさん
2023/04/02(日) 16:59:55.82ID:asGxfFqy2023/04/02(日) 17:13:06.13ID:W9/nq+tL
数学的に安全性が保証されてるっぽい何かがあるんだろ? ってなことだよ
根拠もなしに、安全か? そりゃC++よりマシだろうけどさw
根拠もなしに、安全か? そりゃC++よりマシだろうけどさw
2023/04/02(日) 21:00:51.01ID:WdMf4Ye5
そんな難しいことを考えなくても
Rustの所有権システムをC++で体験したければ
インスタンスを作るときに
必ず常にmake_uniqueかmake_sharedするようにすれば
だいたい同じ振る舞いになる
安全性は保証される
Rustの所有権システムをC++で体験したければ
インスタンスを作るときに
必ず常にmake_uniqueかmake_sharedするようにすれば
だいたい同じ振る舞いになる
安全性は保証される
2023/04/02(日) 23:31:24.96ID:Xbrx8QgA
C++ってstd::move(x)した後にx使うとコンパイラに怒られるの?
35デフォルトの名無しさん
2023/04/03(月) 00:26:35.43ID:CRVbAO5a コンパイラは怒らないから
静的解析ツールが必要だね
静的解析ツールが必要だね
2023/04/03(月) 04:38:42.03ID:rltHNDRD
C++はコンパイルとは別に静的解析とデバッグ解析が不可欠だからな
Rustはコンパイラがメモリ安全からデータ競合安全まで保証してくれるのでかなり楽
Rustはコンパイラがメモリ安全からデータ競合安全まで保証してくれるのでかなり楽
37デフォルトの名無しさん
2023/04/03(月) 09:30:27.97ID:sPhWZLZN デバッグ解析てなんやねん
コンパイラがやる静的解析の範囲が広いというだけでRustでも静的解析・動的解析は基本不可欠
clippy, rustfix, rust-fmt, cargo-expand辺りは静的解析ツールの一種
コンパイラがやる静的解析の範囲が広いというだけでRustでも静的解析・動的解析は基本不可欠
clippy, rustfix, rust-fmt, cargo-expand辺りは静的解析ツールの一種
38デフォルトの名無しさん
2023/04/03(月) 09:40:57.30ID:GW2UDfFX まともにrustかけるやつって例外なくc++もかけるけどな。
2023/04/03(月) 09:51:01.03ID:7c0W6U8J
でも、C++よりマシな程度では?
2023/04/03(月) 09:52:16.72ID:7c0W6U8J
2023/04/03(月) 10:19:52.71ID:efbJG7yX
「安全」に描こうとするとコピーが大量に発生するのか
2023/04/03(月) 10:22:17.10ID:efbJG7yX
>>31
Rust は(限られた範囲において)常に安全ω(キリっ
Rust は(限られた範囲において)常に安全ω(キリっ
43デフォルトの名無しさん
2023/04/03(月) 10:26:17.83ID:ni15ogEW C++er あるあるシリーズ
#![allow(unused)]
... = hoge().unwrap;
... = hoge()?;
let p: *const [u8] = &fuga;
unsafe {}
#![allow(unused)]
... = hoge().unwrap;
... = hoge()?;
let p: *const [u8] = &fuga;
unsafe {}
2023/04/03(月) 10:27:57.18ID:L3onvvn+
>>37
C++のスマポの使い方をミスっても公式支援がない話でそれらは的外れかなあ
clippyはRust公式リント
rustfixはRustコンパイラのよる提案の適用
rust-fmtは清書
cargo-expandはマクロ展開
C++のスマポの使い方をミスっても公式支援がない話でそれらは的外れかなあ
clippyはRust公式リント
rustfixはRustコンパイラのよる提案の適用
rust-fmtは清書
cargo-expandはマクロ展開
2023/04/03(月) 10:39:12.43ID:ux7WrBep
2023/04/03(月) 10:55:27.74ID:GLvgK6Zq
なおグラフ
2023/04/03(月) 11:15:28.73ID:UoFPeH1S
48デフォルトの名無しさん
2023/04/03(月) 11:47:36.10ID:GWsnSys+2023/04/03(月) 11:50:42.61ID:UoFPeH1S
2023/04/03(月) 12:08:48.70ID:NHUpObDP
2023/04/03(月) 12:15:40.80ID:UoFPeH1S
2023/04/03(月) 12:16:08.17ID:GLvgK6Zq
the Bookを捨てよ、町へ出よう
2023/04/03(月) 12:24:08.54ID:GLvgK6Zq
Rustの宣伝文だけ読んで他言語を知った気になり
Rustの宣伝文を5chにコピペし続けるだけの人生
Rustの宣伝文を5chにコピペし続けるだけの人生
2023/04/03(月) 12:47:23.54ID:UoFPeH1S
2023/04/03(月) 12:54:34.40ID:xtNXRsCH
2023/04/03(月) 13:50:16.07ID:QA6IHCRk
「数学的」連呼してる割には名前に直交性が無いな
.iter
.indexed_iter
.iter_mut
.indexed_iter_mut
.outer_iter
.outer_iter_mut
not exist .indexed_iter_mut
not exist .enumerate_iter_mut
.enumerate_pixels_mut
いちいち覚えてられるか?
.iter
.indexed_iter
.iter_mut
.indexed_iter_mut
.outer_iter
.outer_iter_mut
not exist .indexed_iter_mut
not exist .enumerate_iter_mut
.enumerate_pixels_mut
いちいち覚えてられるか?
2023/04/03(月) 13:54:52.87ID:QA6IHCRk
違ったので訂正
誤 not exist .indexed_iter_mut
正 not exist .indexed_outer_iter_mut
誤 not exist .indexed_iter_mut
正 not exist .indexed_outer_iter_mut
2023/04/03(月) 14:01:30.74ID:7c0W6U8J
あ。「数学的」連呼してたのは、C++側の俺
そして、あんまり、数学的な安全の論拠ってのはみつからない
ありゃあC++で真似するんだよ 手本にしない手はない
そして、あんまり、数学的な安全の論拠ってのはみつからない
ありゃあC++で真似するんだよ 手本にしない手はない
2023/04/03(月) 14:08:12.25ID:rB8gWfoY
>>56
各ライブラリで命名方針が異なるのは、プログラミング言語の比較の話と全く無関係じゃね?
あと、enumerate_pixels_mutをその提案のenumerate_iter_mutとしてしまったら、肝心なピクセルが消えて意味不明じゃん。
各ライブラリで命名方針が異なるのは、プログラミング言語の比較の話と全く無関係じゃね?
あと、enumerate_pixels_mutをその提案のenumerate_iter_mutとしてしまったら、肝心なピクセルが消えて意味不明じゃん。
2023/04/03(月) 14:14:18.67ID:7c0W6U8J
雑談としては、そのへんも「きれい」になってくれるとありがたいね
これはC++も同様
これはC++も同様
2023/04/03(月) 14:28:24.56ID:gdFj9/S+
直交性の意味がよく分からなかった
index_of(先頭から検索)とlast_index_of(末尾から検索)は直交性がないことになるのかな
標準と非標準の関係で考えると自然な命名だと思うけど
index_of(先頭から検索)とlast_index_of(末尾から検索)は直交性がないことになるのかな
標準と非標準の関係で考えると自然な命名だと思うけど
2023/04/03(月) 14:29:57.73ID:GLvgK6Zq
63デフォルトの名無しさん
2023/04/03(月) 15:09:57.20ID:dlyOKSPs >>62
どの辺を指して数学的と言ってるのか謎
どの辺を指して数学的と言ってるのか謎
2023/04/03(月) 15:39:46.50ID:7c0W6U8J
2023/04/03(月) 15:53:08.55ID:ZjD7pm8v
>>62
unsafeを使ってsafeなインタフェースを作っている部分、すなわち人間が安全性を保証しなければならなかった部分を、数学的に保証する試みがあるのか
unsafeを使ってsafeなインタフェースを作っている部分、すなわち人間が安全性を保証しなければならなかった部分を、数学的に保証する試みがあるのか
2023/04/03(月) 15:56:35.02ID:7c0W6U8J
そこも気を付けて読んでみるけど、
unsafeを撲滅しようと思ったら、SoCのサポートが必要ってのが今のところの俺の考え
そう考えないと、C++も永遠にsafeに成れないことになってしまう
unsafe部分にバグが、っていう古い記事が出てきたりするんだけど、
どうせ、safeでいいものまでunsafeでいっぱい書いたんでしょ、と思ってる
これは個人の推測
unsafeを撲滅しようと思ったら、SoCのサポートが必要ってのが今のところの俺の考え
そう考えないと、C++も永遠にsafeに成れないことになってしまう
unsafe部分にバグが、っていう古い記事が出てきたりするんだけど、
どうせ、safeでいいものまでunsafeでいっぱい書いたんでしょ、と思ってる
これは個人の推測
67デフォルトの名無しさん
2023/04/03(月) 16:08:23.20ID:sTax+JD2 >>65
数学的とは一言も書いてなくね?
数学的とは一言も書いてなくね?
2023/04/03(月) 16:11:48.88ID:7c0W6U8J
学術的とか、論理的とか、適当に読み替えてくれよ、俺がうまく言えなかったのがいけなかっただけ
69デフォルトの名無しさん
2023/04/03(月) 17:01:07.96ID:dGJwzzow >>61
last_index_ofはlast occurrenceのindexを示すだけで検索方向を示すものでは無いと思う
last_index_ofはlast occurrenceのindexを示すだけで検索方向を示すものでは無いと思う
2023/04/03(月) 17:14:21.15ID:WoF7SnyS
2023/04/03(月) 17:34:14.59ID:G+jJ6S+V
2023/04/04(火) 09:48:59.96ID:1EmRTN+L
前スレを読んだ感想だが
Rustのvtableは1つに合成されているのがへーだった
ちなみにC++は各基底毎にある
https://i.stack.imgur.com/rK5xx.jpg
https://i.stack.imgur.com/TJ1k6.jpg
Rustのvtableは1つに合成されているのがへーだった
ちなみにC++は各基底毎にある
https://i.stack.imgur.com/rK5xx.jpg
https://i.stack.imgur.com/TJ1k6.jpg
73デフォルトの名無しさん
2023/04/04(火) 09:57:45.04ID:WkDAaTBe >>72
それ読み間違えてるぞ
それ読み間違えてるぞ
74デフォルトの名無しさん
2023/04/04(火) 10:05:22.65ID:wMBLnZ/K 複オジメソッド発動
2023/04/04(火) 10:08:21.90ID:2Z9CTS/R
2023/04/04(火) 10:10:16.77ID:E2o8nJSl
まあ、ちゃんとキャストできるようにできてるというか
77デフォルトの名無しさん
2023/04/04(火) 12:04:39.20ID:4IMp+S71 何が間違ってるかは教えてあげない
2023/04/04(火) 13:10:25.87ID:I8oGyAYF
プッ
2023/04/04(火) 13:20:50.92ID:E2o8nJSl
C++を知ってしまったことかな。。
80デフォルトの名無しさん
2023/04/04(火) 14:47:11.16ID:NrMPyXSZ 日本人はtraitとtoiletの区別がつきにくい
2023/04/04(火) 17:52:01.37ID:N9reXox+
もうGPTがどの言語でも変換してくれる時代
82デフォルトの名無しさん
2023/04/04(火) 20:58:36.08ID:N+qd6aMB rustのcrateはdependenciesで入るのが多過ぎるし大き過ぎるわ
要らないものまで無理やり入れさせられてる気分になる
要らないものまで無理やり入れさせられてる気分になる
83デフォルトの名無しさん
2023/04/04(火) 21:26:41.04ID:0Yk0tShF 依存crate問題が最大の弱点ではある
2023/04/04(火) 21:32:45.26ID:nnLBpR2L
node_modulesとどっちがヤバいかな?
2023/04/05(水) 15:18:19.83ID:MSpbiXL9
node_modules は -g で解決
86デフォルトの名無しさん
2023/04/05(水) 15:43:59.95ID:lwqbYnd2 dependenciesに5個程度指定するだけで
依存crateが100個近くになるのも珍しくない
nodeとは比べ物にならないくらいひどいよ
依存crateが100個近くになるのも珍しくない
nodeとは比べ物にならないくらいひどいよ
87デフォルトの名無しさん
2023/04/05(水) 15:47:38.76ID:lwqbYnd2 しかもビルドすると500~1GB超の容量使うからノートの内蔵SSDを使ってると残す必要のないのは積極的にcleanしないときつい
2023/04/05(水) 15:49:19.66ID:46QkPZge
そんだけファイルの読み書きするなら
IOの速度に影響されそうだね
IOの速度に影響されそうだね
2023/04/05(水) 15:55:51.93ID:/Rqy2YcF
マイコンでも大人気と聞いたんだが、どうなってるんだ
90デフォルトの名無しさん
2023/04/05(水) 17:07:48.56ID:rkWYEusf 容量使うのはインクリメンタルビルド用の中間生成物で配置するものとは違うよ
2023/04/05(水) 17:26:43.23ID:/Rqy2YcF
C++もPCHファイルを生成するとアホほどでかかったりするが…世の中うまくいかんな
2023/04/06(木) 14:03:59.93ID:sb5+vAgP
チンチン汁出るッ
2023/04/06(木) 15:09:52.63ID:jULmAo6w
C++なら明示的インスタンス化を使おうよ
使っている人をほぼ見ないけども
使っている人をほぼ見ないけども
2023/04/06(木) 15:52:41.86ID:gPnWA/2r
こう書いておけば、インスタンス化した関数に、こんな風に溶け込むだろうな、とか思って書いてたりはする
時間があれば、生成コードを汗で確認する
びっくりするほどスパゲッティな出力になってて、びっくりすることがある まあ実力不足を痛感する瞬間
時間があれば、生成コードを汗で確認する
びっくりするほどスパゲッティな出力になってて、びっくりすることがある まあ実力不足を痛感する瞬間
95デフォルトの名無しさん
2023/04/06(木) 18:12:44.37ID:un5AwFJZ Cargo はゴミ
2023/04/06(木) 20:01:46.11ID:W1iP43mr
ぺたんこおっぱい
ぽっこりおなか
つるつるわれめ
ぽっこりおなか
つるつるわれめ
2023/04/06(木) 23:30:16.81ID:ZIKOL9hh
>>94
クラスも構造体も使わずに書いているの?
クラスも構造体も使わずに書いているの?
2023/04/06(木) 23:35:22.20ID:gPnWA/2r
ああ、callで呼ぶようなものはなんでも関数って言っちゃうねつい
99デフォルトの名無しさん
2023/04/07(金) 00:17:10.35ID:u3jMtx4p https://www.publickey1.jp/blog/22/ccarbon_languagegooglec.html
こちらはC++との互換性を重視しているらしい
Rustはこの先生きのこれるかな?
こちらはC++との互換性を重視しているらしい
Rustはこの先生きのこれるかな?
100デフォルトの名無しさん
2023/04/07(金) 00:31:06.23ID:D4MDBVlu そこにこれ載ってた
[RFC] Lifetime annotations for C++
https://discourse.llvm.org/t/61377
Rustは勝利した しかし、Rustはその勝利を独占できない
[RFC] Lifetime annotations for C++
https://discourse.llvm.org/t/61377
Rustは勝利した しかし、Rustはその勝利を独占できない
101デフォルトの名無しさん
2023/04/07(金) 03:11:25.56ID:ZE3zxB0C >>100
こう書いてあるね
提案された有効期間注釈に基づく静的分析では、C++ コード内のすべてのメモリ安全性の問題をキャッチすることはできません。
具体的には、すべての時間メモリの安全性のバグ (反復子の無効化によって引き起こされるバグなど) をキャッチすることはできず、
もちろん、有効期間注釈は空間メモリの安全性 (たとえば、C スタイルの配列の範囲外のインデックス作成) には役立ちません。
詳細な議論については、以下のRustとの比較を参照してください。
こう書いてあるね
提案された有効期間注釈に基づく静的分析では、C++ コード内のすべてのメモリ安全性の問題をキャッチすることはできません。
具体的には、すべての時間メモリの安全性のバグ (反復子の無効化によって引き起こされるバグなど) をキャッチすることはできず、
もちろん、有効期間注釈は空間メモリの安全性 (たとえば、C スタイルの配列の範囲外のインデックス作成) には役立ちません。
詳細な議論については、以下のRustとの比較を参照してください。
102デフォルトの名無しさん
2023/04/07(金) 03:22:57.43ID:ZE3zxB0C >>99
Rustを使えるならばRustを使ったほうが良いと明記されているね
ソース
Carbon公式FAQ
https://github.com/carbon-language/carbon-lang/blob/trunk/docs/project/faq.md#why-not-rust
Why not Rust?
If you can use Rust, ignore Carbon.
If you want to use Rust, and it is technically and economically viable for your project, you should use Rust.
In fact, if you can use Rust or any other established programming language, you should.
Carbon is for organizations and projects that heavily depend on C++
Rustを使えるならばRustを使ったほうが良いと明記されているね
ソース
Carbon公式FAQ
https://github.com/carbon-language/carbon-lang/blob/trunk/docs/project/faq.md#why-not-rust
Why not Rust?
If you can use Rust, ignore Carbon.
If you want to use Rust, and it is technically and economically viable for your project, you should use Rust.
In fact, if you can use Rust or any other established programming language, you should.
Carbon is for organizations and projects that heavily depend on C++
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 首相官邸前で「戦争あおるな」 台湾有事巡る答弁に抗議 [蚤の市★]
- 高市首相告白「『なめられない服』を選ぶことに数時間を費やしました」「外交交渉でマウント取れる服、買わなくてはいかんかもなぁ」 [ぐれ★]
- 【高市リスク】立民・小西洋之参院議員「高市総理がとんでもない安全保障オンチで外交オンチ」 [ぐれ★]
- 『DOWNTOWN+』会員数50万人突破で見えてきた 松本人志の“月収4ケタ万円”驚愕収入 [阿弥陀ヶ峰★]
- 【音楽】クラフトワークの来日公演決定 [湛然★]
- 【赤坂ライブハウス刺傷】逃走していた自衛官の男(43)を殺人未遂の疑いで逮捕 警視庁 被害女性とは知人関係 [Ailuropoda melanoleuca★]
- 夜勤終わり風呂なう
- 桃香さん!!
- 【悲報】東京都民さん、20過ぎてるのに自転車に乗っててて大炎上wwwwwwwwwwww女「いい歳した男で自転車に乗るのは知的障がい者だけだよ? [483447288]
- 【悲報】細田守最新作、超絶爆死しそう
- 【悲報】ミスター東大さん、高度な『ずらし』を披露するも愚民には理解されず大炎上wwwwwwwwwwww [455031798]
- 俺より芥川龍之介の本読んでるやつVIPにいないであろう
