結局C++とRustってどっちが良いの? 6traits

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2023/07/29(土) 15:05:46.55ID:2Hm/yplK
C++の色々配慮してめんどくさい感じは好きだけど、実務になったらメモリ安全性とか考えて今後Rustに変わっていくんかな」
「うだうだ言ってないで仕事で必要なのをやればいいんだよ、趣味なら好きなのやればいい」

っていう雑談スレ。

前スレ 
https://itest.5ch.net/mevius/test/read.cgi/tech/1688129795

関連スレ(マ板): Google&MS「バグの70%はC/C++。Rustにする」
https://medaka.5ch.n...cgi/prog/1619943288/
2デフォルトの名無しさん
垢版 |
2023/07/29(土) 15:09:04.43ID:2Hm/yplK
Rustはライフタイムの管理がムズいな。上手くいくかなと思っても結構コンパイルエラーが起こる。これは自分がライフタイムを正確に理解してないだけ?
2023/07/29(土) 15:12:09.86ID:nTghkNr5
>>1
関連スレ(マ板): Google&Microsoft「セキュリティバグの70%はC/C++のメモリ管理ミス。Rustにする」
https://medaka.5ch.net/test/read.cgi/prog/1619943288/
2023/07/29(土) 15:14:14.57ID:nTghkNr5
クラウド世界トップシェアのAWSもRustで構築されているらしい

https://japan.zdnet.com/article/35183866/
AWS (Amazon Web Services)は、「Rust」を使っている大きな理由として、エネルギー効率の高さを挙げる。
AWSは早くからRustを採用し、Rust Foundationの創設にも携わった。
現在もRustの普及に熱心に取り組んでいる。

AWSのソフトウェアエンジニアで、Rustの普及に取り組む
Shane Miller氏と主任エンジニアのCarl Lerche氏の投稿によれば、
Rustはメモリー安全性を高め、セキュリティ関連の不具合を減らす役に立つだけでなく「エネルギー効率に優れている」。
Amazonは、2025年までにデータセンターの100%を再生エネルギーでまかなうという目標を掲げ、
データセンターの環境負荷の軽減に取り組んでいる。
Rustの採用はその一翼を担うという。

Rustで構築されたAWSサービスの例としては、
コンテナーアプリ用のサーバーレスプラットフォーム「Lamba」を支える「Firecracker」、
「Amazon Simple Storage Service(S3)」、
「Amazon Elastic Compute Cloud(EC2)」、
コンテンツ配信ネットワーク「Amazon CloudFront」、
LinuxベースのコンテナーOS「Bottlerocket」などがある。
2023/07/29(土) 15:41:05.71ID:huwazm+x
もう決着ついたじゃん
2023/07/29(土) 16:23:31.04ID:SDRO8Mha
=== 複製おじさん(通称複おじ)について ===
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が複数出現するが、この中にも複製おじさんが多数含まれていると考えられている。
このように自分の誤りを認識した場合、それを認める書き込みは決して行わず、別人の振りをして最初から正しく理解していた体を装うのも複製おじさんの特徴である。
7デフォルトの名無しさん
垢版 |
2023/07/29(土) 16:55:07.62ID:c1f+so80
>>5
うんうんよかったよね、おめでとう
2023/07/29(土) 17:37:52.03ID:I0+lwIGZ
前スレで、moveいるいらないっぽい話がちょろっと出てたけど、
moveまわりを避けて、実直にポインタでやりとりする書き方してるんだろうな
APIにごく近いところに住んでて、簡潔に書くようにしてたら、おのずとそうなるかと
2023/07/29(土) 19:15:34.26ID:of1FckjJ
C++のtemplateの扱いもガチ勢とコンテナ専で意見が分かれそうだな
マルチパラダイム言語だから仕方ないけど見る人によっては無駄に複雑化してるかもしれない

>>1
亀だけどスレ立て乙です
2023/07/29(土) 21:45:32.91ID:XwXxiU6u
>>9
C++の最大の特徴は後方互換性だよ
拡張された部分が複雑で気に入らなければ
使わなくても良いんだよ
2023/07/29(土) 23:38:06.97ID:I6XWshKt
じゃあ過去のコードを手直しせずに新しいコンパイラでコンパイルできるのかと言えばそうでもない
2023/07/29(土) 23:59:23.36ID:XwXxiU6u
コンパイラのバージョン上げて必要になる修正なんて微々たるもの
あんまりコンパイラのバージョン跨ぐと修正が多くなるけども
追従していけばそれほど大変でもない
例の人には特に苦手な作業だろうw
2023/07/30(日) 03:38:14.45ID:8vbtpK07
Rustを使ってる人は、
何か作りたいものが有って作ってるんじゃなく、
自己アピールや書籍を書いたりするためにしている人が多い。
14デフォルトの名無しさん
垢版 |
2023/07/30(日) 07:07:33.08ID:zpxjufbE
>>964 前スレから
>>>962
>>C++20もconceptとかrequireとか言い出してるから心配しなくていいよ
>最近のC++に問題が多数混入したことは知られているが、
>人気が絶頂だったころのC++はシンプルで分かり易かったぞ。

最近っていつ?
2023/07/30(日) 07:30:46.91ID:O1YJNKqz
C++って、全機能使いこなせないと殴られるんちゃうかみたいな ふいんきあった
仕様書頭に入ってないと発言権ありません的な

まあでもそのくらいの気合はあって悪くない
Rustを前にして、苦手意識のほうを捨てることにしたよ
16デフォルトの名無しさん
垢版 |
2023/07/30(日) 07:30:53.64ID:CCkbn9cO
>>13
私は非同期並列処理を用いた高速な行列演算フレームワークを開発しているところ何ですけど。
17デフォルトの名無しさん
垢版 |
2023/07/30(日) 09:04:44.76ID:azQXcNDB
>>968
メンド臭いな
もっとシンプルにしろ
18デフォルトの名無しさん
垢版 |
2023/07/30(日) 09:08:21.61ID:azQXcNDB
>>977
気持ちは判る
改悪は事実だが元々良かった訳でもないしな
19デフォルトの名無しさん
垢版 |
2023/07/30(日) 09:11:27.27ID:azQXcNDB
>>984
これも判る
std::vectorもstd::listも馬鹿設計
2023/07/30(日) 09:15:05.98ID:UyrP6xJo
あたまのおかしい連続レス
>>1
こんな板違いのクソスレ立てるくらいならワッチョイ付きのまともなRustスレ立てろ
ここは頭のおかしい荒らしを養殖、醸成させるスレになってんだよ
2023/07/30(日) 09:16:12.95ID:azQXcNDB
>>2
むずいというよりメンドくさいだけ
考え方はシンプル
メンドくささを受け入れられない気持ちは判る
2023/07/30(日) 09:20:35.40ID:azQXcNDB
>>20
スレタイを unsafe {} で囲め
2023/07/30(日) 10:20:14.20ID:s4F4miSt
>>22
unsafeがあれば安心安全だよな
2023/07/30(日) 11:29:34.23ID:Phugis3j
>>19
どういった点が? 煽りではなく
2023/07/30(日) 11:31:46.14ID:PxbGsfYc
>>21
関数引数のライフタイム注釈は、まあ、分かるんだけど、
structに対するライフタイム注釈は、色々な書籍を見ても、
厳密な定義が分からなかった。
ちゃんと、数学的な言葉や擬似コードなどで書いて欲しい。
たとえば、注釈Aと注釈Bの積集合が、戻り値のライフタイム
になる、みたいな言葉で書くのが数学的な書き方なんだが、
今のRustの仕様書では、そのような言葉で書かれていないので
精密な定義が分からない。
なので、ちゃんとしたプログラムが出来ない。
2023/07/30(日) 11:32:55.90ID:PxbGsfYc
>>24
気付くかどうかがその人の能力。
具体的にプログラミングして実現する実装能力とは別。
2023/07/30(日) 11:38:08.04ID:wjjxPYUe
Haskellバカも含めて論文だの厳密だの言うくせに誰もRFC2094を読んでいないのはなぜなのか
https://ubnt-intrepid.netlify.app/rfc-2094-ja/
2023/07/30(日) 11:57:11.73ID:zED6HehG
煽ったり荒らしたりして情報を引き出すやり方なんだろう
自己中
29デフォルトの名無しさん
垢版 |
2023/07/30(日) 11:58:14.59ID:Phugis3j
>>26
>気付くかどうかがその人の能力。
「俺は問題が分かっている気づかないお前は能力が低い」では議論にならない
こういう言い回しが散見される
あなたが社会に馴染めない原因
2023/07/30(日) 12:00:32.88ID:Phugis3j
>>25
規格をまとめれば査読されるだろうからマシになる
31デフォルトの名無しさん
垢版 |
2023/07/30(日) 12:09:03.54ID:3Gt2feL7
>>25
君の頭の悪さをRustのせいにするなよな
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況