[過去ログ] Rust part16 (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
178: 2022/07/04(月)21:56 ID:UzLOsPAb(1) AAS
もはやここが隔離スレ状態
179: 2022/07/05(火)02:12 ID:WHTTcdQX(1/2) AAS
>>165
「全てunsafe」だぞ。
アプリ全体をunsafeということだ。
なら、C/C++で十分。
180
(1): 2022/07/05(火)04:52 ID:86ZbPeAT(1) AAS
だから
> ポインタ値をアプリ全体でLinkedListのノードを識別するための id 値として利用している場合だ。
の場合だけだろ
お前はそんな特殊なアプリしか作らないのかよw
そもそもノードの識別を全体にばらまいてるとか設計がタコなんじゃね?
181
(1): 2022/07/05(火)05:08 ID:WHTTcdQX(2/2) AAS
>>180
RubyやJava、オブジェクトの「識別番号」が取得できることがあるが、
それはポインタ値だ。通し番号ではない。
つまり、C言語では伝統的に、リンクトリストのノードを識別するために
ポインタ値が使われている。そしてそれこそがリンクリストの本来の使い方。
だれかが間違えて、通し番号で識別する習慣が生まれてしまったが、それは
集団幻覚みたいなもので、誤った使い方だ。
182
(1): 2022/07/05(火)05:22 ID:b2cot2gP(1) AAS
で、何が言いたいんだ?
Linked Listをアプリ全体にばらまいてるアホ設計を正当化しようとしてるのか?w
183
(1): 2022/07/05(火)06:08 ID:8LqsNmpu(1) AAS
>>177
気に入らないやつを片っ端から複おじ認定するのは荒らしなんだろうか
184: 2022/07/05(火)06:20 ID:Nla2AFrI(1) AAS
>>183
その子はキチガイ
>>159でも気に入らない二人だけが書き込みしてるように見えてる
185
(1): 2022/07/05(火)07:54 ID:n+I8xvZo(1/3) AAS
>>181
GC言語では、ポインタと言ってもコストの高いポインタとなっていて、コストの高いガベージコレクションで回収する。
それに加えて、データ競合を防ぐには更に何らかの競合回避コストも加わってくる。

一方で、C/C++ではリンクされたノードリストからノードを外す時に、そのライブラリがノードを解放してしまうと、そこへのポインタを保持していた場合にダングリング発生。
それを回避するためにはshared_ptrなどのコストの高いポインタを使わざるを得ない。
ちなみにC++のshared_ptrはスレッドセーフだからマルチスレッド時でも大丈夫だが、逆に言えばシングルスレッド時には無駄なコストがかかっている。

Rustでは、そこはRcとArcの2種類が提供されており、シングルスレッド時にはコストの低いRc使用、マルチスレッド時にはRcだとコンパイルエラーとなってくれてArc使用と、最小限のコストで済む。
このようにノード解放の観点だけ見ても、考慮すべきことをRustコンパイラは適切に指摘してくれる。
186: 2022/07/05(火)10:29 ID:1zzLwZyb(1/2) AAS
なんでずっとRustスレでRustのセールストークやってるんだ?
187
(1): 2022/07/05(火)10:43 ID:XxVp5yEy(1) AAS
RustスレでRustのネガキャンやってるやつよりマシだろ
188
(2): [sae] 2022/07/05(火)11:28 ID:UQspXvq+(1/3) AAS
>>182
C言語が速い秘密はLinkedListとそのノードをアプリ全体でポインタ値で識別している
ことにある。先頭を0として1,2,3と割り振った通し番号を使っていたと
したら、全然速度が出ない。
そしてその証拠が、JavaやRubyなどで「識別番号」が8桁の16進数で表示できる
ことだ。その識別番号とは生ポインタ値のことであり、それがそのオブジェクトを
唯一に特定できる最も効率的な方法である。
他の方法では効率が落ちる。
189
(1): 2022/07/05(火)11:29 ID:UQspXvq+(2/3) AAS
>>185
あなたは、理解が浅い。
RustのRcやArcには欠陥がある。
そんなもので済むならとっくにCやC++でも採用されている。
C/C++の歴史の長さを舐めてはいけない。
190: 2022/07/05(火)12:22 ID:KaO4bask(1) AAS
>>188
同じ話を何度も繰り返すなよ、ボケ爺か?
そうであってもそのアプリがCと同じでそれ以外のアプリならRustの方が安全って書いてあるだろ
191: 2022/07/05(火)12:28 ID:1zzLwZyb(2/2) AAS
>>187
他人に説明できるだけの合理的理由が無いことは自覚してるんだな……
192: 2022/07/05(火)12:32 ID:84q7aSs+(1) AAS
えっ、なにか説明が欲しかったのか?
スレ読んでりゃわかると思うがw
193
(2): 2022/07/05(火)13:04 ID:n+I8xvZo(2/3) AAS
>>189
欠陥があると主張するならば、その理由を示さなければならない。
さらにC++でも採用されていることを知らないのは無知ではないか?
C++のshared_ptr = RustのArc = SwiftのARC が同じ機能であり、スレッドセーフなリファレンスカウンタ利用の共有ポインタ方式。
それらのスレッドセーフでないコストの安いバージョンがRustのRcである。
これらは、安全にポインタを共有しつつ即時解放を行なうために、必須の機能である。
194: 2022/07/05(火)13:13 ID:Fs2kh1Em(1/2) AAS
>>188
ここでいう効率ってなんの効率?
195
(1): 2022/07/05(火)13:19 ID:MoDZ63yv(1) AAS
ラスタシアンは何故算数おじさんに触れずにいられないのか
196
(3): 2022/07/05(火)16:10 ID:UQspXvq+(3/3) AAS
>>193
いや、RustのRcなどは、C++とshared_ptrと同じじゃない。
全然違うと言っても過言ではない。
197
(1): 2022/07/05(火)18:30 ID:Fs2kh1Em(2/2) AAS
>>195
なぜか自分のレスには反応してくれないんだよね

>>196
具体的になにが違うの
198: 2022/07/05(火)23:09 ID:n+I8xvZo(3/3) AAS
>>196
違いがあると主張するならば、この議論で意味のある違いがあることを示さなければならない。
さらに前述の、欠陥があると主張した件についても、その欠陥を示さなければならない。
199: 2022/07/05(火)23:19 ID:I5LuZ1z+(1) AAS
>>197
>具体的になにが違うの
平日の昼ひまでこのスレにくるおじさん・じじいは
C++のshared_ptrと同じじゃないということを知ってさえいれば激十分なんだよ。
だから、具体的になにが違うかは(知らないから)答えられない。
C++とRustの深い知識あるようなすごい奴が平日の昼暇でここで遊んでいる
なんてことはないだろう。
200: 2022/07/06(水)11:32 ID:jpnjV9Mh(1) AAS
Full Stack Rust App Template using Yew + Actix!
動画リンク[YouTube]
201: 2022/07/06(水)11:45 ID:UGbPogY6(1) AAS
UIフレームワークはスレチだよしんどけ
202: 2022/07/06(水)12:20 ID:b0Oxubv9(1) AAS
ここRustプログラミングに関することならば何でも歓迎
各々の関心がないことの和集合を取ると全体集合になる
特定の人にとって関心がないからと言って排除してはいけない
203
(1): 2022/07/06(水)14:24 ID:oR52wNCu(1) AAS
違いが大きすぎるとどこが違うとかいうのを説明するのが難しくなる。
織田信長とオムライスの違いを説明できるか?
まあ shared_ptr と Rc の違いはさすがにそこまで大きくはないけども、
前提となる C++ と Rust の違いも小さくはないので比較する意味を感じないな。
shared_ptr は shared_ptr だし Rc は Rc としか言いようがないだろう。
204: 2022/07/06(水)16:11 ID:rco22hfx(1) AAS
リファレンスカウント方式の複製可能なスマートポインタという点では類似のものと言って良いのでは
元々はc++とrustで実行効率に差があるという話だがその観点でどういう差があるのかね
そもそも実行効率が何のことを言っているのかがよくわからんから議論しても仕方ないか
205: 2022/07/06(水)18:50 ID:cl7AdtI8(1) AAS
原理と詳細を区別できない人はちょっと……
206
(1): 2022/07/06(水)23:39 ID:DBl9eUwS(1/2) AAS
>>203
全く別物の比較なら、信長は人間、オムライスは食べ物、というようなザックリした説明で良くなるのでは?
207: 2022/07/06(水)23:45 ID:DBl9eUwS(2/2) AAS
Arcとstd::shared_ptr<>が似てるという人に対して、「いや、std::shared_ptr<>とRcは全然違う」と反論するのがおかしいのでは?
1-
あと 795 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.020s