[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 02/27 03:27 / Filesize : 361 KB / Number-of Response : 1025
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

C++ vs Rust



1 名前:デフォルトの名無しさん mailto:sage [2021/04/24(土) 08:04:49.48 ID:nPKzA798.net]
競え

52 名前:デフォルトの名無しさん mailto:sage [2021/09/01(水) 01:27:41.34 ID:FA803rPU.net]
>>40にも答えてくれよ
その「問題」とやらはCursorじゃ解決されてないのかい

53 名前:デフォルトの名無しさん [2021/09/03(金) 08:12:39.26 ID:t+NhPRD1.net]
>>49
ガイジ

54 名前:デフォルトの名無しさん mailto:sage [2021/09/07(火) 20:33:21.38 ID:ezLxFpG4.net]
結局unsafe多用するとか意味ないジャンw

55 名前:デフォルトの名無しさん [2021/09/07(火) 23:30:30.79 ID:W5eU3b0C.net]
>>53 裏方のunsafeなコード(≠危険なコード)を安全に利用してプログラムを書けるのがRustだと思う
また、その裏方のunsafeなコードをRustで書く意味はRustから扱いやすいこと、Rustプログラマーが慣れたRustの文法で書けることがあると思う

56 名前:デフォルトの名無しさん mailto:sage [2021/09/08(水) 01:30:18.74 ID:c9lCkxrV.net]
>>54
お前の理解は浅くて、間違っている。
お前の様な数学の出来ない人には何を言っても無駄。

57 名前:デフォルトの名無しさん mailto:sage [2021/09/08(水) 01:30:55.64 ID:c9lCkxrV.net]
unsafeを閉じ込め切れるならRustはパーフェクトだが、そうはなってないのだ。

58 名前:デフォルトの名無しさん [2021/09/08(水) 09:53:24.22 ID:8gtworgR.net]
>>55 そうか、まぁ一個人の感想ぐらいに受け取ってくれ

59 名前:デフォルトの名無しさん [2021/09/09(木) 16:53:30.53 ID:lJRSMQ7p.net]
なんだかんだ言ってまだまだC++だな

60 名前:デフォルトの名無しさん mailto:sage [2021/09/09(木) 17:22:38.75 ID:fa/WJTRs.net]
unsafe を閉じこめられるかどうかはAPI設計力が問われるよな



61 名前:デフォルトの名無しさん mailto:sage [2021/09/09(木) 18:17:29.61 ID:18O2MBOf.net]
>>56
Rustはunsafeを局所的に安全に閉じ込めることができます
例えばVec<T>型はその各メソッド実装においてunsafeを用いています
これも『Rustがunsafeを局所的に安全に閉じ込めることができる』具体的な実例です

>>58
C++よりもRustの方が優れています

62 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 08:39:25.32 ID:w07MHOd0.net]
>>60
前半、数学的には間違い。
お前には数学の才能が無い。

63 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 09:06:15.40 ID:Ga+Uz44a.net]
数学関係ないし
お前には数学の才能が無い

64 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 09:26:50.69 ID:XIGB6bHM.net]
数学的に間違いの意味がようわからんが、
unsafeブロック内あるいは関数内でSAFETYが守られるようにしないと安全に閉じ込めることができないって意味??

65 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 09:28:15.95 ID:KDfyX1FH.net]
Vec<T> が unsafe を使って安全なインターフェースを提供してることへの反論を示してくれ

66 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 11:00:27.70 ID:4cVpX4oe.net]
>>63
そうでなくて、unsafeブロックで閉じ込めようとしても、閉じ込め切れなくて、
O(x)で表される計算時間が、C言語とは同じでは絶対に不可能な場合があるんだ。
Rustのsafeモードでは、コンテナの中のノードに対して書き込み参照と読み込み参照
を持つことが借用規則によって禁じられていることが原因。
C言語ではそれが当たり前に出来るからとても効率の良いプログラムが可能だが
Rustでは、unsafeの外側ではそれが出来ないから不可能だ。
アプリレベルでそれが出来ないから。
これで納得できない人は数学の才能が無い。
俺は数学の天才。

67 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 11:05:19.78 ID:4cVpX4oe.net]
>>65
数学の才能が無い人のためにもう少し詳しく書いてやろう。
・Rustのsafeモードでは、LinkedListの中の複数のノードに対して、
 読み込み参照と書き込み参照を一度自動時には持てない。
 持つと borrow cheker がコンパイル時にエラーを出してしまう。
・C言語ではそれが当たり前に出来る。
・アプリレベルで1つのLinkedListに対して複数の読み込み参照と
 書き込み参照を同時に記録し続けることで、やっと、挿入や削除が
 O(1)になる。index 値で保持すると O(N)になってしまうから、
 vector と同じ速度オーダーしか出ない(つまり、LinkedList本来の性能
 が全く出せない。)
・結果、Rustは、Cより遅いプログラムしか出来ない。その遅さは、データが
 多いとき、C言語に比べて1万倍でも100万倍でも遅くなる。

68 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 11:27:11.50 ID:2Djs9W2b.net]
>>66
コードで書いて

69 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 11:30:01.67 ID:4cVpX4oe.net]
>>67
RustとCの知識と、東大数学が簡単に解けるような数学の才能をすべてもっている人
に聴いてみろ。

70 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 11:36:42.07 ID:4cVpX4oe.net]
>>68
本当は次のような知識も必要:
・リンクドリストの構造。
・リンクドリストの挿入、削除などの計算オーダーO(x)。
・計算オーダーの記号O(x)の意味。ビッグオー。ランダウの記号。
 東大、京大の学部レベルの解析学(微分積分学)の本を見よ。
・index 値 = 基本は配列の添え字。0から割り振られた連番。
 リンクドリストでは本来使わないが、Rustではノードの場所を覚えておくために
 使わざると得ない。その場合、リンクドリストの先頭のノードを 0 番とし、
 次のノードを 1, その次のノードを 2 のように表す。
 しかしそうすると、リンクドリスとの M 番目の場所の参照を取得するのに
 O(M)の時間が掛かってしまい、リンクドリストの効率の良さが台無しになってしまう。
・このことから、リンクドリストが遅いという誤解を生む状況になってしまっている。



71 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 11:38:10.81 ID:2Djs9W2b.net]
>>68
東大数学って何?

72 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 11:39:59.60 ID:4cVpX4oe.net]
>>70
高校生が灯台に入学するときに受ける東大の数学の試験のことだよ。
それが簡単に解けるくらいのやつに聞いてみろって事だ。
しかし、受験テクニックやパターン学習によって解ける様になったやつはダメだ。

73 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 11:49:52.37 ID:2Djs9W2b.net]
>>69
O(1) で i 番目の要素にアクセスできる safe な LinkedList 実装はある
https://docs.rs/chainlink/0.1.0/chainlink/struct.LinkedList.html

74 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 11:52:48.63 ID:2Djs9W2b.net]
>>72
i 番目の要素というと不正確か
ポインタの代わりに Arena 内での index を使うことで LinkedList のノードを O(1) で参照することができる

75 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 11:53:08.66 ID:FsmeH+FF.net]
https://play.rust-lang.org/?version=nightly&mode=debug&edition=2018&gist=bc6e823f6a44e442aabd4d4882d3eb5a

Repeated 1 time(s), duration = 2.531µs
Repeated 10 time(s), duration = 4.661µs
Repeated 100 time(s), duration = 29.449µs
Repeated 1000 time(s), duration = 256.555µs
Repeated 10000 time(s), duration = 1.800129ms
Repeated 20000 time(s), duration = 3.273489ms
Repeated 50000 time(s), duration = 8.345219ms
Repeated 100000 time(s), duration = 16.454731ms
Repeated 200000 time(s), duration = 32.911471ms
Repeated 500000 time(s), duration = 83.993118ms
Repeated 1000000 time(s), duration = 166.193956ms

結構実行毎にゆれる感じはあるけど、おおむねO(1)じゃないですかね

76 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 12:09:20.46 ID:4cVpX4oe.net]
>>74
アホですか?

>>73
Arenaを使った時点で裸のリンクリストじゃ無いし、時間は、O(x)が同じでも
オーバーヘッドが発生する。また、無駄なメモリー領域も食う。

77 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 12:12:17.45 ID:Ga+Uz44a.net]
>>68
呼んだ?

78 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 12:14:53.57 ID:Ga+Uz44a.net]
>>71
えっ?
高校数学?
レベル低くないか?

79 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 12:18:15.36 ID:Ga+Uz44a.net]
少なくとも>>65が書いてることは数学的でも何でもない

80 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 12:18:20.87 ID:FsmeH+FF.net]
>>75
はい、私はアホで数学の才能が無いので数学の天才様の問題意識が分かりません
VecならO(n)になる先頭への挿入がO(1)でできることを示したつもりでしたが見当違いでしたでしょうか



81 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 12:27:50.85 ID:4cVpX4oe.net]
>>79
push_front()使ってるから先頭へ挿入してるだけじゃないか。
Cのリンクリストは、どんな非負整数 M に対して、M番目に挿入しても
MにもNにも依存しない定数時間で挿入できる。
それがRustに欠けている。

82 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 12:28:54.60 ID:2Djs9W2b.net]
>>75
そのオーバーヘッドは実用上問題になりますか?
例えばmallocの実装もarenaを使っていますが問題はないのですか?
そもそも計算量の議論をしていたのはあなたなのになぜ論点をずらすのですか?

83 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 12:30:48.00 ID:Ga+Uz44a.net]
>>80
挿入自体が定数時間でも
M番目を探すのが定数じゃない

84 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 12:41:50.91 ID:4cVpX4oe.net]
>>82
「M番目」のMをそのまま「通し番号」で表しているならその通りだ、たとえC
であっても。
しかし、Cでは、通し番号ではなくポインタで表現することで1クロックで
辿り付けるので O(1)。

85 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 12:42:38.21 ID:XIGB6bHM.net]
>>65が何言ってるのか1行たりとも理解できなくて日本語の見た目した何かにしか見えないんだけど、
なんで話が進んでるの・・・

86 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 13:08:34.28 ID:Ga+Uz44a.net]
>>83
自分でM番目に挿入って書いてるわけだが

87 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 13:34:07.88 ID:4cVpX4oe.net]
>>85
「M番目に挿入」するが、それをMという数値で識別するとは書いてない。
数学とはそういうものだ。
ポインタ p で表現する場合でも、p が M 番目のノードを指していることがある。
その場合は、M番目に挿入と表現される。
そう表現しないと、O(x)記号で表現しにくいからだ。

88 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 13:35:00.70 ID:FsmeH+FF.net]
>>83
それと同じことをRustではポインタの代わりにCursorMutを使って実現できる、という認識ですが
CursorMutには何が欠けていますか?

89 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 13:35:29.31 ID:4cVpX4oe.net]
数学での言葉の表現と日常の言葉の表現は異なる。
「M番目に挿入」することと、そのノードを、index = M - 1 で表すこととは
別の話だ。

90 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 13:47:35.86 ID:4cVpX4oe.net]
>>87
同じノードを複数のCursor/CursorMutが参照している場合、1つの参照経由
でノードを削除した場合、別の参照がダングリング参照になるのを0コストで
防ぐ方法は無いはずだ。
静的解析が不可能で、時間や記憶域に何らかのオーバヘッドが必要となるはず。



91 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 14:16:45.03 ID:4cVpX4oe.net]
さらに、1つの LinkedListに対して、同時に2個以上の CursorMut を作ることは
出来ないはず。

92 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 14:18:55.00 ID:iOAXb/4V.net]
Cでリンクドリストの途中を直接ポインタで持っていると速いが
その途中が削除された場合にそのポインタは危険なポインタとなる
つまりCで記述しても何らかのコストをかけなければ安全に出来ない
つまりこの問題はどの言語であろうがコストゼロにすることは不可能

93 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 15:27:02.65 ID:I2sJLr90.net]
>>91
いや、数学が得意な人は頭がいいので、それでも至って安全なプログラムが書けるし、
今ままでも書いてきた。
Rustは数学の得意な人間には遥かに及ばない。

94 名前:デフォルトの名無しさん [2021/09/10(金) 15:44:47.65 ID:EyQ85oMr.net]
すげぇバカ

95 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 15:45:34.73 ID:XIGB6bHM.net]
よくわからないけどこんなスレよりqiitaとかzennとかで記事書いたほうがいいと思う

96 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 17:06:16.82 ID:lpjuAWj9.net]
>>86
屁理屈

97 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 17:11:54.58 ID:lpjuAWj9.net]
どんな非負整数Mに対して
と自分で書いている
当然与える情報はMである

各Mに対応するポインタを保持するなら
挿入時にそのテーブルを更新しなきゃならないから
O(1)では出来ない

98 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 17:38:39.28 ID:dS7angqs.net]
>>96
Mを与える情報とは書いてない。
Mというものを使わないと、LinkedListとVectorで共通した議論が出来なく
なるから書いてるだけ。数学では良く使う論法。
つまり、Mは、議論の中で場所を特定するために用いているだけで、
プログラム中で用いているとは言ってない。

99 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 17:41:20.99 ID:dS7angqs.net]
例えば、コンテナに100個のノードが入っていたとする。
コンテナは、LinkedListやVectorなどどんなアルゴリズムを使っているかは何でも良い。
で、「5番目の場所にノードを追加する」という言葉は、LinkedListにも使えるが、
その場合、プログラム中では5という数値で識別せず使わず、ポインタで識別する
のが C言語での常識。
でも、「5番目の場所に追加する」という言葉は使ってよい事になっている。

100 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 17:43:19.62 ID:iOAXb/4V.net]
>>96
その人は数学が得意と言いながらそこすら理解できていない人だからね
Cでもプログラミングしたことあるならすぐわかることだからプログラミング経験も乏しいと推測される
つまりRustを叩きたいだけの人が暴れているだけの構図



101 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 17:48:47.41 ID:dS7angqs.net]
>>99
理解してる。
お前らが、M番目のノードを数値Mでプログラムでも辿ると勘違いしている
抽象化が理解できない馬鹿だからそう思ってるだけ。
俺は抽象化が得意だから、M番目のノードをポインタで識別すると
考える。お前らは、Mとpを脳内で橋渡しできないだけ。

102 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 17:49:37.61 ID:dS7angqs.net]
数学的才能の無い人とは話が合わない。
知能に差が大きすぎる人達とは話が合わない。

103 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 17:58:29.87 ID:9JzLMDXF.net]
もっと知能レベルが合った人が集う場所にいきな

104 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 18:15:44.49 ID:ae9TKcqK.net]
>>100
君は数学が不得意だな
入力Mに対してM番目を得る関数のコスト(リソースコストなど含む)を考えればいいだけなのにそれができない
抽象的に考えるのが苦手なら具体的な関数のプログラムを考えてもよい
Rustを叩きたいだけだとしてもC言語のプログラミングくらいはできるんだろ?
君の主張が間違っていて実現不可能なことがすぐわかる
そして示せなければ君の完全敗北確定だ

105 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 18:22:19.32 ID:uQqwzIiF.net]
>>98
完全に屁理屈
それならわざわざ「どんな非負整数Mに対しても」なんて言う必要は全く無い
任意のノード、任意の箇所
ならまだそういう可能性もある

たまたまMに対応するポインタがキャッシュされてた場合の計算量を言っても何の意味も無い

ちなみに数学的能力はお前よりあると思うよ
実績で勝負するなら付き合う

106 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 18:33:25.73 ID:HO5HNd+Q.net]
>>65
> 俺は数学の天才。

これみて釣りと判断してるけどマジに受け取ってる人もいるのかな?
議論を続けるなら数学うんぬんの要素を抜きつつアクセス効率だけ語ってほすい

107 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 20:54:06.22 ID:2Djs9W2b.net]
まあここ隔離スレなんで

108 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 22:29:30.98 ID:S72cPfGI.net]
自分は数学できないからできる人の相場感覚は分からないが、数学の天才って◯◯予想を証明したとか、定理に自分の名前が付いているとか、そういうレベルの人のことじゃない? 東大数学程度で数学の天才を名乗られても……。

109 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 23:03:29.47 ID:G/i8H+xj.net]
> 高校生が灯台に入学するときに受ける東大の数学の試験のことだよ。

高校数学でここまでイキれるのはもはや才能だと思うわ
数学の天才っていうのは数学の研究してて教科書書いてるような
著名な人をまわりの人が「他称」するときの話で
高校数学の成績で「自称」しちゃうってのは別の才能w

110 名前:デフォルトの名無しさん mailto:sage [2021/09/10(金) 23:04:20.56 ID:uQqwzIiF.net]
東大でやる数学じゃなくて入試でしょ?
つまり高校レベル
こんなのを東大の数学と言うな



111 名前:デフォルトの名無しさん mailto:sage [2021/09/11(土) 01:22:42.58 ID:Q/hQI3Xf.net]
知ってる一番難しい数学がそれだったんでしょ
つっこんであげないのが優しさでは

112 名前:デフォルトの名無しさん mailto:sage [2021/09/11(土) 01:40:01.24 ID:PRM8i6LA.net]
>>80
C言語でも他の言語でもそのようなことは実現不可能です
いくらRustを叩きたいとはいえ主張が滅茶苦茶になっていますよ

113 名前:デフォルトの名無しさん mailto:sage [2021/09/11(土) 10:36:57.99 ID:kQXQH3+b.net]
馬鹿ばっか。

114 名前:デフォルトの名無しさん mailto:sage [2021/09/11(土) 11:20:17.45 ID:PFLibieQ.net]
実際連結リストのノードに対する参照を保持しておくってどういうユースケースで現れるんだろうか

115 名前:デフォルトの名無しさん [2021/09/11(土) 11:40:09.41 ID:tSun79KI.net]
掲示板で算数自慢するときに使う

116 名前:デフォルトの名無しさん mailto:sage [2021/09/11(土) 11:42:49.15 ID:kQXQH3+b.net]
>>113
例:

1. テキストエディタで、10万行のファイルを読み込み、その先頭に
1000行のテキストを挿入するときの速度向上。

2. 言語を自作する時、マクロ展開の時のトークン列へのトークンの挿入

117 名前:デフォルトの名無しさん mailto:sage [2021/09/11(土) 16:43:18.56 ID:zUj2TAiQ.net]
>>115
それはどちらの使用例なのかハッキリしてほしいです。
配列にN番目への参照を格納する例として挙げているのか、
そうではなくリンクリストを用いる例として挙げているのか、
どちらですか?

118 名前:デフォルトの名無しさん [2021/09/11(土) 23:33:36.29 ID:EO9owr6G.net]
>>112

119 名前:デフォルトの名無しさん mailto:sage [2021/09/12(日) 00:21:25.00 ID:CFIv5O+a.net]
相手をバカと貶めることで何もしなくても自分わ相対的に高めることができるという高等な議論テクだ
さすが高学歴

120 名前:デフォルトの名無しさん mailto:sage [2021/09/12(日) 02:54:54.78 ID:x/1IPUIX.net]
>>115
1.ってバッファを1個のLinkedListとして持っておいて、カーソルの位置をノードへの&mutで持っておきたいって発想だよね
それよか2個のLinkedListに「カーソル以前の内容」「カーソル以降の内容」を最初から分けて持っておいて、
必要に応じて前者の末尾または後者の先頭を操作するという風にすれば、常に&mut LinkedListつかまれることもなくて都合良いのでは?

workaroundでしかないという批判は認めよう



121 名前:デフォルトの名無しさん mailto:sage [2021/09/17(金) 13:36:25.88 ID:9sB/yeOV.net]
任意のM番目に要素を挿入する時間計算量がO(1)の線形リストができないと入院中の妹が苦しむんだわ…

122 名前:デフォルトの名無しさん mailto:sage [2021/09/18(土) 16:11:40.95 ID:bNqoSBDr.net]
どーでも良いですよ

byだいたひかる

123 名前:デフォルトの名無しさん [2021/10/05(火) 15:44:11.57 ID:+1Hntkr6.net]
素人だからよく分からんけど、実務やってる人からCppだとvoid**とか出てきて難しすぎて狂うって話は聞いたことあるけどラッパークラスを作って分かりやすいメソッドつくればいいんじゃないの

124 名前:デフォルトの名無しさん [2021/10/05(火) 18:47:14.74 ID:JbR3YU6O.net]
void**のどこが難しいのかさっぱり

125 名前:デフォルトの名無しさん mailto:sage [2021/10/17(日) 09:40:31.27 ID:6Bvliwnf.net]
void**は許さない派

126 名前:デフォルトの名無しさん mailto:sage [2021/10/24(日) 13:55:43.29 ID:eQqSgpa/.net]
任意の言語ができる操作が任意の言語ではできないとほざくやつが数学ができるとかネタか糖質だろう...
チューニングマシンの存在を真っ向から否定したいならここではなく学会で論文を出そうね

127 名前:デフォルトの名無しさん mailto:sage [2021/10/24(日) 14:24:43.42 ID:eQqSgpa/.net]
プロレスごっこを期待して覗いたら、キチガイが占拠していたのは笑う

128 名前:デフォルトの名無しさん mailto:sage [2021/10/24(日) 14:57:26.55 ID:dxF2sYGf.net]
ここ隔離スレなので

129 名前:デフォルトの名無しさん mailto:sage [2021/10/24(日) 18:05:52.35 ID:NLtlOSxj.net]
チューニングマシンて

130 名前:デフォルトの名無しさん mailto:sage [2021/10/24(日) 20:19:43.90 ID:IF6Ria+p.net]
c++とrustってチューニング完全なんですよね。意外にこれ知られてない



131 名前:デフォルトの名無しさん mailto:sage [2021/10/24(日) 20:55:50.68 ID:IF6Ria+p.net]
rustの所有権は所謂、線形型
普通に理論として確立している
数学できるくんの主張は線形型によってチューニングマシンの計算複雑性が変化するってことだろう
証明できたらチューニング賞ものだろう
何十年ぶりじゃないか?記述計算量に新しい概念が導入されるのは

132 名前:デフォルトの名無しさん mailto:sage [2021/10/24(日) 22:07:03.33 ID:+peTc5KU.net]
rustの所有権や借用や、コンパイルが通らずにいらいらきますが、慣れればスラスラというか、ストレスなく書けるようになるのかな

133 名前:デフォルトの名無しさん mailto:sage [2021/10/24(日) 22:10:42.59 ID:+peTc5KU.net]
日本語がおかしいですが、
所有権や借用が、やりたいことをストレスなく書けるようになる気がしなくて…

134 名前:デフォルトの名無しさん mailto:sage [2021/10/24(日) 22:29:10.11 ID:HVo+cqVA.net]
慣れみたいなものはあると思う
コンパイル通るようコード直すことを繰り返す内に最初からコンパイル通すことができるようになるかと

135 名前:デフォルトの名無しさん mailto:sage [2021/10/24(日) 22:41:32.45 ID:+peTc5KU.net]
>>133
ありがとうございます
やはり繰り返しと慣れですね…

もう少し分かるまで粘ってみます
取り急ぎお礼まで

136 名前:デフォルトの名無しさん mailto:sage [2021/10/25(月) 17:58:05.73 ID:a6PpXdhO.net]
>>131
細かいことにいちいち煩い姑のようだからね。
別に大したご利益

137 名前:もないし。 []
[ここ壊れてます]

138 名前:デフォルトの名無しさん mailto:sage [2021/10/25(月) 20:25:16.68 ID:cubP7NbG.net]
>>135
ご利益の大小はソフトウェアの種類によって変わるだろうね
OSやブラウザのようなメモリアクセス違反が即致命的な脆弱性に繋がり得る、かつ、巨大でバグを取り除ききるのが難しいソフトではご利益大きい
逆に多少バギーでも困らないソフトならただ煩わしいだけというのは正しいかも
とはいえ慣れればコンパイルが通るようにコードを書くのは多くの場合難しくないので、個人的にはカジュアルユースでもコストよりメリットが多いように感じる

139 名前:デフォルトの名無しさん [2021/10/26(火) 18:03:05.91 ID:KgmW7hJW.net]
>>136
め早口

140 名前:デフォルトの名無しさん mailto:sage [2021/10/26(火) 20:06:45.12 ID:OracOvFU.net]
>>131
「最後に消費するのは誰か?」を明確にするだけでよくて
その人以外に渡す時は借用してもらうだけだよね
あとはmut借用だけ一時的独占でルールおしまい



141 名前:デフォルトの名無しさん mailto:sage [2021/10/26(火) 22:54:07.10 ID:XkR6Nv6d.net]
>>138
コメントありがとうございます
いまはまだおっしゃることにピンとこないのですが、「最終消費者は誰か」は常にこころに留めて進めてみます
まだサンプルコードを写経している段階なので、具体的なテーマを見つけて苦労してみます

>>135 さんもありがとうございます
ホント、小煩い姑状態です
親父の小言は後に効く、といいますが…

haskellでいう型クラスや、代数データ型、パターンマッチなど魅力的な機能があり、はやく馴染みたいです…

142 名前:デフォルトの名無しさん [2021/10/26(火) 23:17:46.13 ID:zVG+0sad.net]
>>29
まさに半年経ってようやくカーネルにアロケーター導入されたわけだが
完璧に君の負けだよね
お疲れ様です

143 名前:デフォルトの名無しさん mailto:sage [2021/10/27(水) 08:20:39.13 ID:qg2SY4Q5.net]
こんな実装するならrust使う意味ないけどねw
https://doc.rust-lang.org/stable/std/alloc/trait.Allocator.html
頭悪いからさらに時間使っちゃいそうでかわいそう。

144 名前:デフォルトの名無しさん mailto:sage [2021/10/27(水) 09:20:32.30 ID:2iZWGrmg.net]
ゴールをずらせば負けたことにならないまで読んだ

145 名前:デフォルトの名無しさん [2021/10/27(水) 09:23:36.95 ID:q+lzbSiO.net]
あちゃちゃwそれ別のapiじゃんw
お馬鹿さんだからメーリス追えないんだねww

146 名前:デフォルトの名無しさん [2021/10/27(水) 09:29:13.91 ID:zfYVqfDQ.net]
話追えるようになってから来てくださいね🤗

147 名前:デフォルトの名無しさん [2021/10/27(水) 09:30:10.86 ID:zfYVqfDQ.net]
頭悪いのどっちかな

148 名前:デフォルトの名無しさん mailto:sage [2021/10/27(水) 14:57:34.79 ID:qg2SY4Q5.net]
は?linuxの方ならここから話全く進んでないんだが。。誤魔化せると思ったのかな。。
https://lkml.org/lkml/2021/7/7/349

149 名前:デフォルトの名無しさん mailto:sage [2021/10/27(水) 15:49:20.46 ID:G9Y5/nKM.net]
だからそれだけ貼られても経緯とかなんもわからんし読む気もおきんって

150 名前:デフォルトの名無しさん [2021/10/27(水) 16:58:29.94 ID:Ru0zcXw7.net]
顔真っ赤っかで草w
悔しいねえw



151 名前:デフォルトの名無しさん [2021/10/27(水) 16:59:43.91 ID:3BkIbLo2.net]
>>146
頭悪いの君だよね?

152 名前:デフォルトの名無しさん [2021/10/27(水) 18:36:52.66 ID:zwnES/cK.net]
あわしろ氏がLinuxをRustで書き直すプロジェクト始めなかったっけ。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](;´∀`)<361KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef