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

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
136: 2022/07/04(月)01:01 ID:zU5p2DDn(1/2) AAS
>>129
あなたは理解できてない。
137: 2022/07/04(月)01:54 ID:3k8jHKP2(1/3) AAS
>>135
たとえば?
138
(1): 2022/07/04(月)02:12 ID:WMds9h9Q(1/5) AAS
rustには定義されたメモリモデルはないわけだが何を比較してCと違うと言っているの?
外部リンク[html]:doc.rust-lang.org
139
(1): 2022/07/04(月)03:21 ID:zU5p2DDn(2/2) AAS
>>135
「メモリモデル」という言い方は、PC-9801のような16BIT MS-DOS時代に
別の意味で使っていたから混乱を招くが、言いたいことは分かる。
140: 2022/07/04(月)04:54 ID:086teQVY(1) AAS
言いたいことが分かるなら説明すればいいのに...
141: 2022/07/04(月)07:57 ID:aE2+UZrf(1) AAS
>>139
結局のところ>>129で合っているわけか
142
(2): 2022/07/04(月)09:03 ID:tfDB1jS/(1/3) AAS
>>138
そんな真面目な用語じゃなくて
プログラマがメモリに対して持つメンタルモデルとかそのくらいの意味ではないかと思われる
143
(1): 2022/07/04(月)09:23 ID:YSvCn/0F(1) AAS
メンタルモデルw
144: 2022/07/04(月)09:24 ID:WMds9h9Q(2/5) AAS
>>142
そのレベルの話だとしてもスタックやヒープの使い方はrustもcも同じだよね
何をもって違いすぎると言っているのかがわからん
145: 2022/07/04(月)11:11 ID:1aJxC781(1) AAS
>>129
>unsafeとは他の言語と同じ状態ということ
unsafeでもRust特有のメリットもあればデメリットもある
特にC/C++とは担保されてるsafetyのレベルが根本的に違うので「unsafeなら他の言語と同じ」とか言ってる人はunsafeをまるで理解してないので騙されないように
146
(2): 2022/07/04(月)11:57 ID:DrP+xMl0(1) AAS
そこはあまり本質的じゃないな
Rustは機能的にも速度的にもC言語の代替となれる点が本質だろう
そのうえでRustは非常に大きなプラスαがあるからC/C++は不要となった
147
(2): 2022/07/04(月)12:04 ID:RBYxpWsA(1) AAS
Rustの側で書き換えないから
let a=99;
とかした奴をCに渡してC側で書き換えるのってアウトだよね?
148: 2022/07/04(月)12:06 ID:qOfLavvD(1) AAS
>>146
何の本質??
149: 2022/07/04(月)12:45 ID:rY6uXQUu(1) AAS
>>142
メンタルモデルなんて言葉ねーよ、ハゲ
150: 2022/07/04(月)12:48 ID:RggUqH9I(1) AAS
Rustの登場でC/C++が要らなくなったのは当然

>>147
まずはRustの初歩を学習必須
Rustではlet mut a = 99; とmutを指定すればその変数が書き替え可能
呼び出し先で書き替えたいならば
まずRustの関数を呼び出す時は &mut a と可変参照を渡せば呼び出し先で書き替え可能
Cの関数を呼び出す時はそれを *mut とポインタにして渡せば呼び出し先で書き替え可能
151
(4): 2022/07/04(月)12:51 ID:iNsmlcex(1/4) AAS
>>146
全てunsafeにでもしない限り、効率を落とさずには代替になれない例が有ると言っている。
ポインタ値をアプリ全体でLinkedListのノードを識別するための id 値として
利用している場合だ。
index 番号では効率が劇的に下がるケースが多い。
152
(2): 2022/07/04(月)13:07 ID:EPYowFm9(1) AAS
>>151
その件に限らず全てのケースで以下が成立する
基本事項: RustではCと同じ速度&同じ安全度で常に全ての実装が可能
追加事項: RustではCと同じ速度&完全に安全なインタフェースで多くの実装が可能
したがってCが不要となったとの話はもちろん正しい
153
(1): 2022/07/04(月)13:15 ID:tfDB1jS/(2/3) AAS
&a as *const _ as *mut _
154
(1): 2022/07/04(月)13:24 ID:iNsmlcex(2/4) AAS
>>152
あなたの理解は浅い。
155
(2): 2022/07/04(月)13:39 ID:Lyc/Sj1E(1) AAS
>>153
それはmut宣言していない変数を(先のC関数もしくはRust unsafeで)書き換えてしまうことになるためあまりよろしくない
書き替えるならばmut変数のmut参照を直接*mutにした方が良いのでは
let mut a: 型名 = 初期値;
c_func( & mut a as *mut _ )

>>154
それは>>152で正しい
156: 2022/07/04(月)13:43 ID:NdI05vlq(1) AAS
すべての言語にunsafeがあればいいよね
157: 2022/07/04(月)14:00 ID:WMds9h9Q(3/5) AAS
>>151
ベンチマークください
158: 2022/07/04(月)14:07 ID:V2xsx4Ai(1) AAS
>>147
FFI呼び出しに要求されるsafetyを満たしてないと言う意味ではアウトだけどそれがどうかした?
159
(1): 2022/07/04(月)14:13 ID:hjCO09br(1) AAS
まーた複オジ vs 100点オジの低レベルな言い争いになってるから
隔離スレ復活させたほうがいいな
160
(1): 2022/07/04(月)15:40 ID:iNsmlcex(3/4) AAS
>>155
頭の悪い人は黙ってろ。
161: 2022/07/04(月)16:04 ID:ttcTbGc1(1) AAS
>>160
>>155に間違いは無いようだし
君はさっきから的外れなことばかり書いてるような
162
(1): 2022/07/04(月)17:29 ID:3k8jHKP2(2/3) AAS
>>151
それがどうしたというんだ?
何を言いたいのかわからん。
163: 2022/07/04(月)18:02 ID:iNsmlcex(4/4) AAS
>>162
馬鹿には何を言っても理解できない。
164: 2022/07/04(月)18:07 ID:3k8jHKP2(3/3) AAS
> 全てunsafeにでもしない限り

誰も問題にしてないところを勝手に取り上げるのはストローマン論法っていうんだぜ!
165
(1): 2022/07/04(月)18:46 ID:tF6z07pc(1) AAS
>>151
なにを問題にしてるのかよくわからんが必要なら全てunsafeにすればいいやん
それでもCとかと同じでそれ以外のケースではRustの方がより安全なんだし
1-
あと 837 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.026s