公式
https://www.rust-lang.org/
https://blog.rust-lang.org/
https://github.com/rust-lang/rust
Web上の実行環境
https://play.rust-lang.org
日本語の情報
https://rust-jp.rs/
※Rustを学びたい人はまず最初に公式のThe Bookを読むこと
https://doc.rust-lang.org/book/
※Rustを学ぶ際に犯しがちな12の過ち
https://dystroy.org/blog/how-not-to-learn-rust
※Rustのasyncについて知りたければ「async-book」は必読
https://rust-lang.github.io/async-book/
※次スレは原則>>980が立てること
前スレ
Rust part16
探検
Rust part17
レス数が950を超えています。1000を超えると書き込みができなくなります。
2022/10/06(木) 22:43:13.96ID:Re0G7B20
871デフォルトの名無しさん
2022/12/07(水) 12:46:13.68ID:g3+WCnxI872デフォルトの名無しさん
2022/12/07(水) 12:53:44.84ID:Mw8qZqut >>860
元記事に以下とあるから既存のコードをrustで書き換えることまではしないという意味だと思われる
As we noted in the original announcement, our goal is not to convert existing C/C++ to Rust, but rather to shift development of new code to memory safe languages over time.
元記事に以下とあるから既存のコードをrustで書き換えることまではしないという意味だと思われる
As we noted in the original announcement, our goal is not to convert existing C/C++ to Rust, but rather to shift development of new code to memory safe languages over time.
873デフォルトの名無しさん
2022/12/07(水) 12:54:18.57ID:Mw8qZqut874デフォルトの名無しさん
2022/12/07(水) 15:17:49.39ID:Xzjw4n/l875デフォルトの名無しさん
2022/12/07(水) 15:24:21.27ID:3HHCfxiv マジでrust本腰入れよ
ゾワってしたわ
C/C++書いてたけど取り残される
ゾワってしたわ
C/C++書いてたけど取り残される
876デフォルトの名無しさん
2022/12/07(水) 15:28:39.71ID:h/t9+qo5877デフォルトの名無しさん
2022/12/07(水) 15:40:23.08ID:3HHCfxiv せっかくモダンC++とoneTBB覚えて万能感感じてたのにさ
リセットかよ
リセットかよ
878デフォルトの名無しさん
2022/12/07(水) 15:51:23.23ID:Mw8qZqut >>874
新規コードの20%ね
In Android 13, about 21% of all new native code (C/C++/Rust) is in Rust.
There are approximately 1.5 million total lines of Rust code in AOSP
ともあるからAOSPの全体のコード量分かればrustの割合も分かるはず
新規コードの20%ね
In Android 13, about 21% of all new native code (C/C++/Rust) is in Rust.
There are approximately 1.5 million total lines of Rust code in AOSP
ともあるからAOSPの全体のコード量分かればrustの割合も分かるはず
879デフォルトの名無しさん
2022/12/07(水) 15:52:33.64ID:Mw8qZqut880デフォルトの名無しさん
2022/12/07(水) 15:58:02.82ID:JdTFl5al There are approximately 1.5 million total lines of Rust code in AOSP
*Android Open Source Project (AOSP)
1.5mてどう考えても、例によってRustコンパイラやサードcrateのソースツリーも含まれている悪寒
*Android Open Source Project (AOSP)
1.5mてどう考えても、例によってRustコンパイラやサードcrateのソースツリーも含まれている悪寒
881デフォルトの名無しさん
2022/12/07(水) 16:58:18.23ID:Mw8qZqut >>880
AOSPのソースツリーではrustcはpre-built binaryがコミットされてるから行数カウントには含まれてないっぽい
外部crateは含まれてるかも知れないけど、実際にそれだけのコードが使われているという意味では正しいんじゃないの
AOSPのソースツリーではrustcはpre-built binaryがコミットされてるから行数カウントには含まれてないっぽい
外部crateは含まれてるかも知れないけど、実際にそれだけのコードが使われているという意味では正しいんじゃないの
882デフォルトの名無しさん
2022/12/07(水) 17:03:21.31ID:n0jQbyrj883デフォルトの名無しさん
2022/12/07(水) 17:15:07.05ID:g3+WCnxI 実際に使われているC/C++
を捨てることの正当性ももう無いんだからいいじゃないか
を捨てることの正当性ももう無いんだからいいじゃないか
884デフォルトの名無しさん
2022/12/07(水) 17:35:07.63ID:8PgDeggG >>880
>1.5mてどう考えても、
同感。この短期間に150万行ってどの範囲?これが普通の感想
>>881
>AOSPのソースツリーではrustcはpre-built binaryがコミットされてる
何処?
github mirrorの方で教えて https://github.com/aosp-mirror
>>883
新規nativeコードの21%という数字が水増し、かどうかに係るので整理するべきかと
>1.5mてどう考えても、
同感。この短期間に150万行ってどの範囲?これが普通の感想
>>881
>AOSPのソースツリーではrustcはpre-built binaryがコミットされてる
何処?
github mirrorの方で教えて https://github.com/aosp-mirror
>>883
新規nativeコードの21%という数字が水増し、かどうかに係るので整理するべきかと
885デフォルトの名無しさん
2022/12/07(水) 17:40:15.78ID:21cwGaas 割合とか増えていくんだからどうでもいいだろ
それよりAndroidでrustが使えるところはrustを使うという判断がとっくにされてたのが衝撃
それよりAndroidでrustが使えるところはrustを使うという判断がとっくにされてたのが衝撃
886デフォルトの名無しさん
2022/12/07(水) 17:42:58.56ID:NHS9DFe3 珍しく良い記事紹介だったのに
急に下らない議論になっちゃうのな
急に下らない議論になっちゃうのな
887デフォルトの名無しさん
2022/12/07(水) 17:44:20.91ID:Mw8qZqut >>884
GutHubでどこにあるのかは分からないがAndroid Code Searchでは以下が出てきたのでpre-built binary使ってるのかなと判断した
https://cs.android.com/android/platform/superproject/+/master:prebuilts/rust/linux-musl-x86/1.63.0/bin/rustc;l=1?q=rustc&sq=
C++もrustも外部ライブラリはexternal配下にまとめられているようなので、それぞれで集計の仕方を変えるなんて事をしてない限りは、同一条件での比較になるんじゃないかな
あと150万行ってのはAndroid13の話じゃなくて累積のコード量がって話しだよ
GutHubでどこにあるのかは分からないがAndroid Code Searchでは以下が出てきたのでpre-built binary使ってるのかなと判断した
https://cs.android.com/android/platform/superproject/+/master:prebuilts/rust/linux-musl-x86/1.63.0/bin/rustc;l=1?q=rustc&sq=
C++もrustも外部ライブラリはexternal配下にまとめられているようなので、それぞれで集計の仕方を変えるなんて事をしてない限りは、同一条件での比較になるんじゃないかな
あと150万行ってのはAndroid13の話じゃなくて累積のコード量がって話しだよ
888デフォルトの名無しさん
2022/12/07(水) 17:44:50.45ID:8PgDeggG >>884 追記
なんかRust批判みたいな印象になっているけど、881が多少調べたっぽいので詳しく知りたいだけ
なんかRust批判みたいな印象になっているけど、881が多少調べたっぽいので詳しく知りたいだけ
889デフォルトの名無しさん
2022/12/07(水) 17:47:35.12ID:JLiaiVk0 >>886
次世代隔離スレがなくなると暇してるオジサン達が溢れてくるのよ
次世代隔離スレがなくなると暇してるオジサン達が溢れてくるのよ
890デフォルトの名無しさん
2022/12/07(水) 17:55:32.50ID:8PgDeggG >>887 ありがと
ただし、ここ見るだれでもrustコンパイラを構成するソースファイルが山ほどある
https://cs.android.com/android/platform/superproject/+/master:prebuilts/rust/linux-musl-x86/1.63.0/src/
さすがにgccの方はsoになってる
https://cs.android.com/android/platform/superproject/+/master:prebuilts/gcc/linux-x86/
>C++もrustも外部ライブラリはexternal配下にまとめられている
こうした統計ではソースとしておいてあるかどうかで結構差がある
ただし、ここ見るだれでもrustコンパイラを構成するソースファイルが山ほどある
https://cs.android.com/android/platform/superproject/+/master:prebuilts/rust/linux-musl-x86/1.63.0/src/
さすがにgccの方はsoになってる
https://cs.android.com/android/platform/superproject/+/master:prebuilts/gcc/linux-x86/
>C++もrustも外部ライブラリはexternal配下にまとめられている
こうした統計ではソースとしておいてあるかどうかで結構差がある
891はちみつ餃子 ◆8X2XSCHEME
2022/12/07(水) 17:59:46.34ID:vqEtcxl0 割合で言えば大したことは無くてもある程度は積極的に使おうとする雰囲気は感じなくもないってところかな。
892デフォルトの名無しさん
2022/12/07(水) 18:00:13.04ID:8PgDeggG >>887
>あと150万行ってのはAndroid13の話じゃなくて累積のコード量がって話しだよ
累積のコード量で、Android向け書き起こしRustソースが150万行、という主張であれば水増しの疑いを持ってる
>あと150万行ってのはAndroid13の話じゃなくて累積のコード量がって話しだよ
累積のコード量で、Android向け書き起こしRustソースが150万行、という主張であれば水増しの疑いを持ってる
893デフォルトの名無しさん
2022/12/07(水) 18:01:45.15ID:8PgDeggG894デフォルトの名無しさん
2022/12/07(水) 18:01:53.83ID:Mw8qZqut >>890
コンパイラじゃなくて標準ライブラリのことね
確かにlibcとは扱いに差があるかもね
詳細な数値が気になるならソースダウンロードして測定してみたら良いのでは
https://source.android.com/docs/setup/download/downloading
コンパイラじゃなくて標準ライブラリのことね
確かにlibcとは扱いに差があるかもね
詳細な数値が気になるならソースダウンロードして測定してみたら良いのでは
https://source.android.com/docs/setup/download/downloading
895デフォルトの名無しさん
2022/12/07(水) 18:04:39.07ID:8PgDeggG >>894
そんな手間かけたくないから聞いたんだけど、皆そうなんだろうな
>累積のコード量で、Android向け書き起こしRustソースが150万行、という主張であれば水増しの疑いを持ってる
これで継続だな
そんな手間かけたくないから聞いたんだけど、皆そうなんだろうな
>累積のコード量で、Android向け書き起こしRustソースが150万行、という主張であれば水増しの疑いを持ってる
これで継続だな
896デフォルトの名無しさん
2022/12/07(水) 18:06:43.25ID:Mw8qZqut897デフォルトの名無しさん
2022/12/07(水) 18:11:19.10ID:8PgDeggG898デフォルトの名無しさん
2022/12/07(水) 18:13:51.76ID:8PgDeggG ちなみにPhoronixで読んだが、LinuxのRust対応は賞味2万行
899デフォルトの名無しさん
2022/12/07(水) 18:20:26.12ID:wjXnim/d900デフォルトの名無しさん
2022/12/07(水) 18:24:03.55ID:8PgDeggG 例えば、ここだけど、150万行はおろか、2万行すら程遠いかな
https://github.com/aosp-mirror/kernel_common/tree/android-mainline/rust
https://github.com/aosp-mirror/kernel_common/tree/android-mainline/rust
901デフォルトの名無しさん
2022/12/07(水) 18:36:53.47ID:M+Adnv0G もっと有意義な話しようぜ
fn<T>foo(x: &T); のTにSized制約付くの邪魔くせーとかさ
fn<T>foo(x: &T); のTにSized制約付くの邪魔くせーとかさ
902デフォルトの名無しさん
2022/12/07(水) 18:39:18.13ID:CifLjB7G903デフォルトの名無しさん
2022/12/07(水) 18:41:18.29ID:Mw8qZqut >>901
x: TのときはSizedついて欲しいけど、&Tのときはついて欲しくないということ?
Box<T>やRc<T>やユーザー定義のスマートポインタの扱い考えるとめんどくさいから一律Sizedがデフォルトでよくない?
x: TのときはSizedついて欲しいけど、&Tのときはついて欲しくないということ?
Box<T>やRc<T>やユーザー定義のスマートポインタの扱い考えるとめんどくさいから一律Sizedがデフォルトでよくない?
904デフォルトの名無しさん
2022/12/07(水) 18:48:05.32ID:Mw8qZqut905デフォルトの名無しさん
2022/12/07(水) 18:51:46.12ID:8PgDeggG906デフォルトの名無しさん
2022/12/07(水) 18:53:03.86ID:21cwGaas そりゃC++とのInteropが絶対に必要だしRustはそこが弱い
そういう用途としてはCarbonがあるけどセキュアではない
(C++よりはマシだろうが)
そういう用途としてはCarbonがあるけどセキュアではない
(C++よりはマシだろうが)
907デフォルトの名無しさん
2022/12/07(水) 18:58:45.38ID:8PgDeggG908デフォルトの名無しさん
2022/12/07(水) 19:02:37.66ID:glN0FB8M Androidの中のRustはGabeldorsche, keystore2, DoH, UWBくらいだっけ
もう3年くらいかかってるからそれなりの行数になってる気もするけどどうなんだろ
aospのrepo sync全部やるの時間かかるんだよな…
もう3年くらいかかってるからそれなりの行数になってる気もするけどどうなんだろ
aospのrepo sync全部やるの時間かかるんだよな…
909デフォルトの名無しさん
2022/12/07(水) 19:05:40.97ID:8PgDeggG910デフォルトの名無しさん
2022/12/07(水) 19:09:14.99ID:/TInWduh repo sync 終わらんよな
今3時間経過
今3時間経過
911デフォルトの名無しさん
2022/12/07(水) 19:14:14.71ID:8PgDeggG 期待大
原文では
>There are approximately 1.5 million total lines of Rust code in AOSP across new functionality and components such as Keystore2, the new Ultra-wideband (UWB) stack, DNS-over-HTTP3, Android’s Virtualization framework (AVF), and various other components and their open source dependencies.
となってますので、
Keystore2
Ultra-wideband (UWB) stack
DNS-over-HTTP3
Android’s Virtualization framework (AVF)
and various other components and their open source dependencies.
これで150万行の大半を占めているかのような書き方です
まさかこれが大半を占めていたり
>open source dependencies
rustコンパイラのソースツリーが入っているとは言えませんよね
原文では
>There are approximately 1.5 million total lines of Rust code in AOSP across new functionality and components such as Keystore2, the new Ultra-wideband (UWB) stack, DNS-over-HTTP3, Android’s Virtualization framework (AVF), and various other components and their open source dependencies.
となってますので、
Keystore2
Ultra-wideband (UWB) stack
DNS-over-HTTP3
Android’s Virtualization framework (AVF)
and various other components and their open source dependencies.
これで150万行の大半を占めているかのような書き方です
まさかこれが大半を占めていたり
>open source dependencies
rustコンパイラのソースツリーが入っているとは言えませんよね
912デフォルトの名無しさん
2022/12/07(水) 19:30:47.68ID:/TInWduh 期待すんな
gitとpython入ってるwsl環境とかあれば簡単にとってこれるぞ
https://source.android.com/docs/setup/download/downloading
ただ時間がかかるだけ
この程度出来ない奴がrustについて云々言うとか片腹痛い
gitとpython入ってるwsl環境とかあれば簡単にとってこれるぞ
https://source.android.com/docs/setup/download/downloading
ただ時間がかかるだけ
この程度出来ない奴がrustについて云々言うとか片腹痛い
913デフォルトの名無しさん
2022/12/07(水) 19:35:42.75ID:8PgDeggG >この程度出来ない奴がrustについて云々言うとか片腹痛い
そうだね(笑)
こっちでもやってみるかな
そうだね(笑)
こっちでもやってみるかな
914デフォルトの名無しさん
2022/12/07(水) 19:35:54.12ID:glN0FB8M 半年ほど前のやつがあったのでそれでtokeiかけてみた
とりあえずexternal内が180万行でprebuiltsが500万行くらい
なので1.5mの根拠はexternalの方かな
prebuiltsの方に上で挙がってたmuslとか入っている
external内はrustディレクトリ内の依存クレートが150万くらい
依存クレートでないので最大はcrosvmが30万行くらい
というわけでAndroidのために150万行書き下ろしたというのは言い過ぎ
ただ150万行のソースコード使ってるという原文の主張は正しそう(コンパイラのコードとかは入ってない)
まぁ依存クレートにも明らかにAndroid用っぽいのもあるし
これ以上の切り分けは難しいな
とりあえずexternal内が180万行でprebuiltsが500万行くらい
なので1.5mの根拠はexternalの方かな
prebuiltsの方に上で挙がってたmuslとか入っている
external内はrustディレクトリ内の依存クレートが150万くらい
依存クレートでないので最大はcrosvmが30万行くらい
というわけでAndroidのために150万行書き下ろしたというのは言い過ぎ
ただ150万行のソースコード使ってるという原文の主張は正しそう(コンパイラのコードとかは入ってない)
まぁ依存クレートにも明らかにAndroid用っぽいのもあるし
これ以上の切り分けは難しいな
915デフォルトの名無しさん
2022/12/07(水) 19:50:48.43ID:CifLjB7G916デフォルトの名無しさん
2022/12/07(水) 20:03:05.60ID:glN0FB8M 一応依存クレートも一通り見てみたけど大きいのはメジャーなやつだね
というわけでAndroidのために書かれたコードは全体で40万行以内ってとこかな
まぁtokioやらcrossbeamがちゃんと使われているのは水増しと批判するようなことではなく
むしろいいことなんじゃないか?
というわけでAndroidのために書かれたコードは全体で40万行以内ってとこかな
まぁtokioやらcrossbeamがちゃんと使われているのは水増しと批判するようなことではなく
むしろいいことなんじゃないか?
917デフォルトの名無しさん
2022/12/07(水) 22:19:15.93ID:Lb4jZ7zf それにしても無駄の多いコーディングだな。
そもそもAndroidで使われたというだけであって、Rustが広まったという訳ではない。
そもそもAndroidで使われたというだけであって、Rustが広まったという訳ではない。
918デフォルトの名無しさん
2022/12/07(水) 22:24:52.03ID:Lb4jZ7zf かつてCが流行したのは、LatticeC、SmallC、TurboC、MS-C、WatcomC など
色んな企業がコンパイラ作りを競い合った結果だったかも知れん。
TurboCが流行ったが、それ以前からCは雑誌I/Oなどでも取り上げられて、
さまざまな人が話をし、良い言語であるという噂が立っていた。
当時を知っている俺が言わせて貰えば、なぜか、Rustはビビっとこない。
Cはビビっと来た。
C++は、初期の頃にびびっときたが、C++11では、こりゃもう駄目だ、
と思った。
色んな企業がコンパイラ作りを競い合った結果だったかも知れん。
TurboCが流行ったが、それ以前からCは雑誌I/Oなどでも取り上げられて、
さまざまな人が話をし、良い言語であるという噂が立っていた。
当時を知っている俺が言わせて貰えば、なぜか、Rustはビビっとこない。
Cはビビっと来た。
C++は、初期の頃にびびっときたが、C++11では、こりゃもう駄目だ、
と思った。
919デフォルトの名無しさん
2022/12/07(水) 22:39:14.39ID:UARY1o0b >>918 蓋を開けてみれば様々なバグ(特にメモリ関連)の元凶だったから、その感覚の逆が正解かな
920デフォルトの名無しさん
2022/12/07(水) 22:42:23.65ID:cTs8jKu4 アセンブラとBASICしか無かった所に
Cが登場したから、そりゃ喜んで使うわ
Cが登場したから、そりゃ喜んで使うわ
921デフォルトの名無しさん
2022/12/07(水) 22:59:32.88ID:Odhm3loP >>918
今は何にビビっと来るの?
今は何にビビっと来るの?
922デフォルトの名無しさん
2022/12/07(水) 23:01:58.13ID:Xa+0WmXy >>918
LSI C-86も入れといてね
LSI C-86も入れといてね
923デフォルトの名無しさん
2022/12/07(水) 23:23:48.68ID:g3+WCnxI スタックかグローバル変数しか無い文化でCを流行らせてもヒープのバグは少ない
ヒープを使わないなら変数の寿命は固定長、という伏線が回収されたことに
まだ気付いてない人もいる
ヒープを使わないなら変数の寿命は固定長、という伏線が回収されたことに
まだ気付いてない人もいる
924デフォルトの名無しさん
2022/12/07(水) 23:25:35.88ID:21cwGaas >>918
ロートルは去れ
ロートルは去れ
925デフォルトの名無しさん
2022/12/07(水) 23:26:15.82ID:Lb4jZ7zf >>921
そうだな、まだ決め手となるものは無いが、(個人的には好きではないが)JSに
人気が有るのはブラウザがそれしか使えなかったから「では無い」と思ってる。
Rubyと比較すればJSの方が優れているように感じる。
また、C#はJavaよりは改良されていると感じる。但し、これも好きではない。
Pythonも好きではない。人気が有る理由は恐らくAIのライブラリと使用例が
多いからではないかと思ってる。
ということで、今はびびっとくるものが無い。
そうだな、まだ決め手となるものは無いが、(個人的には好きではないが)JSに
人気が有るのはブラウザがそれしか使えなかったから「では無い」と思ってる。
Rubyと比較すればJSの方が優れているように感じる。
また、C#はJavaよりは改良されていると感じる。但し、これも好きではない。
Pythonも好きではない。人気が有る理由は恐らくAIのライブラリと使用例が
多いからではないかと思ってる。
ということで、今はびびっとくるものが無い。
926デフォルトの名無しさん
2022/12/07(水) 23:31:51.79ID:Xa+0WmXy 結局RUSTに限った話じゃなかったかw
927デフォルトの名無しさん
2022/12/07(水) 23:34:48.20ID:Lb4jZ7zf Rustは大々的には流行らないんじゃないと思うぞ。
理由は色々有るが、
・流行ってる言語は、JS、Python、Java、PHP、C#、Ruby、VB など、初心者向けの
簡易言語が多い。
・Rustは中途半端。伝統を無視。習慣を無視。直感的でない。
・そもそもRustは低レベル向け言語、上記に書いた簡易言語のターゲット層には
被らない。
なお、Googleは色んな言語に手を出す企業。
使ってる言語も幅広く、(同列に入れるべきでないものも混ざるが)
C++、NaCL(*)、Java、Kotlin(*)、Go(*)、Dart(*)、Carbon(*)、Rust、Wasm、
などなど。[(*)は自社製言語や自社製仮想言語(?)]
自社製言語だけでも4つ、仮想言語が1つ。
理由は色々有るが、
・流行ってる言語は、JS、Python、Java、PHP、C#、Ruby、VB など、初心者向けの
簡易言語が多い。
・Rustは中途半端。伝統を無視。習慣を無視。直感的でない。
・そもそもRustは低レベル向け言語、上記に書いた簡易言語のターゲット層には
被らない。
なお、Googleは色んな言語に手を出す企業。
使ってる言語も幅広く、(同列に入れるべきでないものも混ざるが)
C++、NaCL(*)、Java、Kotlin(*)、Go(*)、Dart(*)、Carbon(*)、Rust、Wasm、
などなど。[(*)は自社製言語や自社製仮想言語(?)]
自社製言語だけでも4つ、仮想言語が1つ。
928デフォルトの名無しさん
2022/12/07(水) 23:36:08.15ID:cTs8jKu4 MS-DOS 向けで最初に入ってきたのは
optimizing C86 だったと思う
optimizing C86 だったと思う
929デフォルトの名無しさん
2022/12/07(水) 23:40:24.00ID:Lb4jZ7zf そもそも低レベル言語でもココまでメモリ管理に気をとられる言語はなく、
直感的に書けた。
Rustはメモリ管理ばかりに気をとられる言語。論理に集中しにくい。
また、JavaやC#、C、C++では直感的に書けることがRustでは書けない。
なお、「それはおまえがバグのコードを書いているから」と反論されるが、
はっきり言って、そのコードでも全くバグは無いから。
直感的に書けた。
Rustはメモリ管理ばかりに気をとられる言語。論理に集中しにくい。
また、JavaやC#、C、C++では直感的に書けることがRustでは書けない。
なお、「それはおまえがバグのコードを書いているから」と反論されるが、
はっきり言って、そのコードでも全くバグは無いから。
930デフォルトの名無しさん
2022/12/07(水) 23:49:55.59ID:51+7TkbX 隔離スレがないからとにかく昔話をしたいお爺ちゃん達のたまり場になっちゃったね
931デフォルトの名無しさん
2022/12/07(水) 23:56:19.06ID:Lb4jZ7zf Cが流行ったのはリンクリストが作れたからだ。
Strousutup氏はリンクリストを全否定に近い形で否定しまくっているが、
彼は机上の空論であり、彼が自分で実験してvectorの方が速いとしたものも
実際に合わない机上の空論的なベンチマークテストだったろう。
そしてそれを信じてしまったRustの作者はRustではリンクリストを
まともには使えない状態にしてしまった。
Strousutup氏はリンクリストを全否定に近い形で否定しまくっているが、
彼は机上の空論であり、彼が自分で実験してvectorの方が速いとしたものも
実際に合わない机上の空論的なベンチマークテストだったろう。
そしてそれを信じてしまったRustの作者はRustではリンクリストを
まともには使えない状態にしてしまった。
932デフォルトの名無しさん
2022/12/07(水) 23:59:45.09ID:sHYfIE3H なんだお前だったのか
933デフォルトの名無しさん
2022/12/08(木) 00:03:22.42ID:kNVI3qAc スレ立てろよ
手持ちの回線だと全部無理なんだ
手持ちの回線だと全部無理なんだ
934デフォルトの名無しさん
2022/12/08(木) 00:08:02.18ID:QroOE5Fs ID:Lb4jZ7zfのプライドだけ高い老害感すごいな 狙ってできるもんじゃない
935デフォルトの名無しさん
2022/12/08(木) 00:20:06.52ID:pMPEGjtK 一般人は馬鹿だから偉い学者さんが言った間違った言説を信じるしかない。
実験したことが現実的な状況と合ってなければ実験結果は無意味。
だから、他の経験者はリンクリストが速くてメモリー効率もいいことを知っている
のに机上の空論者であるところのStroustrup氏は、自分がやった机上の空論的な
実験結果を縦に徹底抗戦を仕掛けている。
しかし、実際と有って無いから反感を買っている。
それも、C++から人が離れていっている原因の一つ。
C++もRustもどちらも机上の空論になってる。
実験したことが現実的な状況と合ってなければ実験結果は無意味。
だから、他の経験者はリンクリストが速くてメモリー効率もいいことを知っている
のに机上の空論者であるところのStroustrup氏は、自分がやった机上の空論的な
実験結果を縦に徹底抗戦を仕掛けている。
しかし、実際と有って無いから反感を買っている。
それも、C++から人が離れていっている原因の一つ。
C++もRustもどちらも机上の空論になってる。
936デフォルトの名無しさん
2022/12/08(木) 00:22:10.33ID:pMPEGjtK937デフォルトの名無しさん
2022/12/08(木) 00:29:07.90ID:WCqcOtXz 即NG㌧
938デフォルトの名無しさん
2022/12/08(木) 00:32:17.18ID:pMPEGjtK LinkedListがキャッシュ効率が悪いというのも机上の空論。
なぜなら、机上の空論者は、LinkedListのノードのアドレスが「ランダム」で
あると間違った仮定するから。
実際には基本的に連続しており、多くの場合は連続して無いとしても
軽微な数バイトの隙間がところどころ空いているだけ。
大きく変化することもあるが、それは全体の数箇所だけ。
なぜなら、挿入箇所は、一箇所から始まってその周辺を押し広げてノードを挿入している
だけで、それが少数あるだけだから、アドレスが大きく変わる箇所はわずかで、
「バースト的」になっているから。
机上の空論者は、ノードアドレスをランダムだと考えるから、キャッシュ・ミスが常に
起きると考えてしまう。ところが、そんな状況はまず有りえない。
なぜなら、机上の空論者は、LinkedListのノードのアドレスが「ランダム」で
あると間違った仮定するから。
実際には基本的に連続しており、多くの場合は連続して無いとしても
軽微な数バイトの隙間がところどころ空いているだけ。
大きく変化することもあるが、それは全体の数箇所だけ。
なぜなら、挿入箇所は、一箇所から始まってその周辺を押し広げてノードを挿入している
だけで、それが少数あるだけだから、アドレスが大きく変わる箇所はわずかで、
「バースト的」になっているから。
机上の空論者は、ノードアドレスをランダムだと考えるから、キャッシュ・ミスが常に
起きると考えてしまう。ところが、そんな状況はまず有りえない。
939デフォルトの名無しさん
2022/12/08(木) 00:35:48.02ID:pMPEGjtK >>938
さらに、LinkedListのメモリー効率が悪いというのもウソで、むしろ、
std::vectorの方が悪いことが多い。
なぜなら、後者は、濃度ーを末尾追加していくと、スプリアス的に
今までの配列の入ったテーブルの1.5倍のサイズのテーブルをヒープ領域から
確保してしまう。
これが物凄く致命的で、std::vectorは、要素 T のサイズが大きい場合、
物凄くメモリー効率が悪くなる。
一方、std::list は、要素 T のサイズが大きい場合、std::vectorより遥かにメモリー効率が良い。
さらに、LinkedListのメモリー効率が悪いというのもウソで、むしろ、
std::vectorの方が悪いことが多い。
なぜなら、後者は、濃度ーを末尾追加していくと、スプリアス的に
今までの配列の入ったテーブルの1.5倍のサイズのテーブルをヒープ領域から
確保してしまう。
これが物凄く致命的で、std::vectorは、要素 T のサイズが大きい場合、
物凄くメモリー効率が悪くなる。
一方、std::list は、要素 T のサイズが大きい場合、std::vectorより遥かにメモリー効率が良い。
940デフォルトの名無しさん
2022/12/08(木) 00:39:53.26ID:pMPEGjtK >>939
[補足]
std::vectorは、sizeがcapacityを越えそうになると、今までのcapacityの
1.5倍のテーブルを新たに確保するので、今までのテーブルと合わせると、
一時的に 1 + 1.5 = 2.5 倍のメモリー領域を確保してしまう。
std::list ならこんなことは起きない。
なおさらに悪いことに、std::vectorはことの時、全要素を move するので
キャッシュが大規模に汚染されてしまう。
キャッシュ汚染という点では、std::vectorは、先頭や途中への要素追加
の際もキャッシュが大規模に汚染されてしまう。
[補足]
std::vectorは、sizeがcapacityを越えそうになると、今までのcapacityの
1.5倍のテーブルを新たに確保するので、今までのテーブルと合わせると、
一時的に 1 + 1.5 = 2.5 倍のメモリー領域を確保してしまう。
std::list ならこんなことは起きない。
なおさらに悪いことに、std::vectorはことの時、全要素を move するので
キャッシュが大規模に汚染されてしまう。
キャッシュ汚染という点では、std::vectorは、先頭や途中への要素追加
の際もキャッシュが大規模に汚染されてしまう。
941デフォルトの名無しさん
2022/12/08(木) 00:45:56.87ID:pMPEGjtK stroustrup氏の言説はデタラメが多くてストレスがたまる。
そして、自分が間違った説を後ろ盾するために、間違った仮定の元に
実験を行なっている。
コンピュータの実験の場合、正しい仮定のもとで行なうことが重要で、
実験して時節を裏付ける結果が出たとしても、仮定がまるっきり
間違っているのだからどうしようもない。
ベンチマークテストでも、もし、実際と合わないような内容をテストしても
意味が無い。そんな状況は滅多に起きないから。
コンピュータの測度は「加重平均値」で決まる。どういう「加重」かが、机上の空論者
には分からないからデタラメになる。
言語仕様の策定においても、実際にはそんなことをやってもほとんど意味が無いことを
優先的に簡単化しようとする一方で、もっとも重要なことがめんどくさくなるような
仕様を追加してしまったりする。
だから、C++は机上の空論といわれる。
ところが、同じことがRustにも言える。
そして、自分が間違った説を後ろ盾するために、間違った仮定の元に
実験を行なっている。
コンピュータの実験の場合、正しい仮定のもとで行なうことが重要で、
実験して時節を裏付ける結果が出たとしても、仮定がまるっきり
間違っているのだからどうしようもない。
ベンチマークテストでも、もし、実際と合わないような内容をテストしても
意味が無い。そんな状況は滅多に起きないから。
コンピュータの測度は「加重平均値」で決まる。どういう「加重」かが、机上の空論者
には分からないからデタラメになる。
言語仕様の策定においても、実際にはそんなことをやってもほとんど意味が無いことを
優先的に簡単化しようとする一方で、もっとも重要なことがめんどくさくなるような
仕様を追加してしまったりする。
だから、C++は机上の空論といわれる。
ところが、同じことがRustにも言える。
942デフォルトの名無しさん
2022/12/08(木) 00:46:30.49ID:rnWAZYk7 gccのrustフロントエンドがマージされるそうだけど、これってどういう時に便利なの?
gccでビルドしたCとのcross-language LTOとかできるの?
gccでビルドしたCとのcross-language LTOとかできるの?
943デフォルトの名無しさん
2022/12/08(木) 01:02:47.82ID:D2mGrKMe >>914,916
ありがとうございます とても参考になります
こちらはパーティションを小分けにしていたせいで要領不足にあっていました
これ全体だと300GB以上あるのでしょうか?
仕方ないので
repo init -u https://android.googlesource.com/platform/manifest --depth=1 --partial-clone --clone-filter=blob:limit=10M -b android-13.0.0_r18
としたら100GB位に収まって何とか完走したところです
android-12.1.0_r26も取ってきて21%がcrosvm(当初はChromeOS向け)の移行を含んでるのかどうか見たかったのですが
話のネタが変わってしまったので週末かどこかでやり直すことにしました
ありがとうございます とても参考になります
こちらはパーティションを小分けにしていたせいで要領不足にあっていました
これ全体だと300GB以上あるのでしょうか?
仕方ないので
repo init -u https://android.googlesource.com/platform/manifest --depth=1 --partial-clone --clone-filter=blob:limit=10M -b android-13.0.0_r18
としたら100GB位に収まって何とか完走したところです
android-12.1.0_r26も取ってきて21%がcrosvm(当初はChromeOS向け)の移行を含んでるのかどうか見たかったのですが
話のネタが変わってしまったので週末かどこかでやり直すことにしました
944デフォルトの名無しさん
2022/12/09(金) 01:41:09.99ID:Sh2LVmg/ LinkedList信者まだいるんだ....
リンクリストなんて既にETHやMITでも、コンピューターサイエンスで多くの人が間違いなく否定するものなのに。別にStrousutupだけじゃないぞ?ほぼ全否定で言ってるのは
キャパを越えそうな事を無理やりするのはほぼ設計の問題だし、途中への要素追加が起きるようなコードを書いてて問題ないと思ってるのはプログラマの能力の問題。
バースト的なんて言ってるけど、連続するメモリー領域へのアクセスと比べて明らかにリンクリストが不利になるのは自明だ、さらに逆に途中追加した場合のキャッシュミスを汚染なんて言ってるけど
それこそ現代の多段キャッシュアーキテクチャを甘く見すぎてる。そりゃ容量を超えるような操作を行えばメインメモリに取りに行くけど、言うまでもないがリンクリストの要素の先はメインメモリー散らばってる。
それがキャッシュされるとしてもCPUのキャッシュは1Byteとか8Byteをキャッシュするものじゃなく1キャッシュブロックで連続するメモリーをk単位でキャッシュする。
StrousutupのC++は明らかに欠陥言語だが、それとデーター構造の理解は別の問題。 コンピュータの速度は加重平均なんていう単純なもんではない
すべてがキャッシュに乗るなら一番早く動くが、メインメモリを頻繁にアクセスするなら100倍遅くなる。メインメモリにさえ載りきらないデータを扱いHDDならそこからさらに1000倍遅い。
だがキャッシュの容量しかデータを扱えないプログラムは役に立たたないし、Swapしまくりのプログラムは実用に耐えない。
まだLinkedListを擁護する人が多いのは、欧米のように日本のプログラマーは文系や高卒がやり、明らかにまともに計算機科学というものを受けていないからだ
Rustこそ欧州主体で行われている計算機科学にあまり即してない、FORTRANみたいな米国主導のLinkedListのような産物
リンクリストなんて既にETHやMITでも、コンピューターサイエンスで多くの人が間違いなく否定するものなのに。別にStrousutupだけじゃないぞ?ほぼ全否定で言ってるのは
キャパを越えそうな事を無理やりするのはほぼ設計の問題だし、途中への要素追加が起きるようなコードを書いてて問題ないと思ってるのはプログラマの能力の問題。
バースト的なんて言ってるけど、連続するメモリー領域へのアクセスと比べて明らかにリンクリストが不利になるのは自明だ、さらに逆に途中追加した場合のキャッシュミスを汚染なんて言ってるけど
それこそ現代の多段キャッシュアーキテクチャを甘く見すぎてる。そりゃ容量を超えるような操作を行えばメインメモリに取りに行くけど、言うまでもないがリンクリストの要素の先はメインメモリー散らばってる。
それがキャッシュされるとしてもCPUのキャッシュは1Byteとか8Byteをキャッシュするものじゃなく1キャッシュブロックで連続するメモリーをk単位でキャッシュする。
StrousutupのC++は明らかに欠陥言語だが、それとデーター構造の理解は別の問題。 コンピュータの速度は加重平均なんていう単純なもんではない
すべてがキャッシュに乗るなら一番早く動くが、メインメモリを頻繁にアクセスするなら100倍遅くなる。メインメモリにさえ載りきらないデータを扱いHDDならそこからさらに1000倍遅い。
だがキャッシュの容量しかデータを扱えないプログラムは役に立たたないし、Swapしまくりのプログラムは実用に耐えない。
まだLinkedListを擁護する人が多いのは、欧米のように日本のプログラマーは文系や高卒がやり、明らかにまともに計算機科学というものを受けていないからだ
Rustこそ欧州主体で行われている計算機科学にあまり即してない、FORTRANみたいな米国主導のLinkedListのような産物
945デフォルトの名無しさん
2022/12/09(金) 02:35:24.01ID:wDDTmzGU なんだかRubyガイジみたいな論法だよな
Rubyでできることはすばらしいこと
Rubyでできないことは必要ないこと
いや必要あるか、使うかどうかは検討の上こっちが決めるんで😅
Rubyでできることはすばらしいこと
Rubyでできないことは必要ないこと
いや必要あるか、使うかどうかは検討の上こっちが決めるんで😅
946デフォルトの名無しさん
2022/12/09(金) 08:53:27.93ID:eLXAv6sJ 関数型のElixir は、先頭だけに追加できる片方向リストで、
データが変更されない・immutable だから、バグらない
x = a-b の時に、
先頭に、c を追加して、y = c-a-b となった時に、
a-bの部分が変更されないので、x, y 両方で再利用できる
データが変更されない・immutable だから、バグらない
x = a-b の時に、
先頭に、c を追加して、y = c-a-b となった時に、
a-bの部分が変更されないので、x, y 両方で再利用できる
947デフォルトの名無しさん
2022/12/09(金) 09:23:54.41ID:Bd/06DhF >>944
絶対ネタで書いてるだろw
絶対ネタで書いてるだろw
948デフォルトの名無しさん
2022/12/09(金) 13:50:41.90ID:3DNXTGzR >>944
CPUにおいて、基本的に cache block と cache line は同じ意味だが、
https://stackoverflow.com/questions/14707803/line-size-of-l1-and-l2-caches
のように、Intel CPUにおけるcache lineの大きさは 64バイト。
先読み機能が有るので、少し先まで読むことがあるが、
1KBみたいに大きくは無い。
CPUにおいて、基本的に cache block と cache line は同じ意味だが、
https://stackoverflow.com/questions/14707803/line-size-of-l1-and-l2-caches
のように、Intel CPUにおけるcache lineの大きさは 64バイト。
先読み機能が有るので、少し先まで読むことがあるが、
1KBみたいに大きくは無い。
949デフォルトの名無しさん
2022/12/09(金) 13:58:22.82ID:3DNXTGzR >>944
コンピュータ科学ではむしろ、LinkedListがArrayListより速いことがあることを学ぶ。
コンピュータ科学ではむしろ、LinkedListがArrayListより速いことがあることを学ぶ。
950デフォルトの名無しさん
2022/12/09(金) 14:00:08.53ID:3DNXTGzR >>944
>言うまでもないがリンクリストの要素の先はメインメモリー散らばってる。
現実的な使用法では、バースト的になっていて、散らばってない。
散らばっていると思っている人が現実を知らない机上の空論家だと言っている。
>言うまでもないがリンクリストの要素の先はメインメモリー散らばってる。
現実的な使用法では、バースト的になっていて、散らばってない。
散らばっていると思っている人が現実を知らない机上の空論家だと言っている。
951デフォルトの名無しさん
2022/12/09(金) 14:03:46.44ID:3DNXTGzR >>950
[補足]
バース的で無い場合においても、非常に近いアドレスになっていることが多い。
例えば、ノードを削除してから追加すると、最後に削除されたアドレスが再利用されるから、
データ列を加工する場合にはキャッシュがとても強く働く。
また、ソートにおいてもノードの繋ぎ方を変えるだけだから、コピーはおろか、
ムーブすら発生せず、要素Tのバイト数sizeof(T)が十分大きい場合は、
std::vectorより速い。
[補足]
バース的で無い場合においても、非常に近いアドレスになっていることが多い。
例えば、ノードを削除してから追加すると、最後に削除されたアドレスが再利用されるから、
データ列を加工する場合にはキャッシュがとても強く働く。
また、ソートにおいてもノードの繋ぎ方を変えるだけだから、コピーはおろか、
ムーブすら発生せず、要素Tのバイト数sizeof(T)が十分大きい場合は、
std::vectorより速い。
952デフォルトの名無しさん
2022/12/09(金) 14:08:27.79ID:3DNXTGzR >>944
>コンピュータの速度は加重平均なんていう単純なもんではない
加重平均である事と、単純である事は同じことでは無い。
単純ではないが、加重平均である。
実行時間 T = Σ_i w_i T_i
w_i = 処理 i に対する重みパラメータ
T_i = 処理 i に掛かる時間
w_i は、経験を積まないとわからなくて、机上の空論家はこれを誤って見積もる。
偉いとされる先生を筆頭とした「象牙の塔」の集団幻覚の様な現象が起きる。
>コンピュータの速度は加重平均なんていう単純なもんではない
加重平均である事と、単純である事は同じことでは無い。
単純ではないが、加重平均である。
実行時間 T = Σ_i w_i T_i
w_i = 処理 i に対する重みパラメータ
T_i = 処理 i に掛かる時間
w_i は、経験を積まないとわからなくて、机上の空論家はこれを誤って見積もる。
偉いとされる先生を筆頭とした「象牙の塔」の集団幻覚の様な現象が起きる。
953デフォルトの名無しさん
2022/12/09(金) 14:13:39.03ID:3DNXTGzR >>951
[さらに補足]
・ノードを削除してから追加する--->malloc や new が、直近に
削除したノードのアドレスを再利用されるのでキャッシュが良く効く。
・削除したノードのメモリ・ブロックが全部使われた場合、
malloc や new がHeapやOSから新しくアドレスを確保してくる -->
OSは後続の連続アドレスを返してくるので、アドレスはほぼ連続
するので、キャッシュが良く効く。
故に、実際的な使用においては、LinkedListはキャッシュがよく効く。
[さらに補足]
・ノードを削除してから追加する--->malloc や new が、直近に
削除したノードのアドレスを再利用されるのでキャッシュが良く効く。
・削除したノードのメモリ・ブロックが全部使われた場合、
malloc や new がHeapやOSから新しくアドレスを確保してくる -->
OSは後続の連続アドレスを返してくるので、アドレスはほぼ連続
するので、キャッシュが良く効く。
故に、実際的な使用においては、LinkedListはキャッシュがよく効く。
954デフォルトの名無しさん
2022/12/09(金) 14:18:24.24ID:3DNXTGzR たとえば、馬鹿な人は、通信経路においてのエラーは「ランダムに起きる」から、
「本当にランダム」のケースを脳内で勝手に想像して、
「CRC符合は一般には役に立たない」
と結論付けてしまうかも知れないが、それは机上の空論で、
実際のエラーはバースト的に起きるから、CRC符合は非常に強力に働く。
それと同様にLinkedListもキャッシュが良く効く。
なぜならノードのアドレスが「ランダム」ではないから。
「本当にランダム」のケースを脳内で勝手に想像して、
「CRC符合は一般には役に立たない」
と結論付けてしまうかも知れないが、それは机上の空論で、
実際のエラーはバースト的に起きるから、CRC符合は非常に強力に働く。
それと同様にLinkedListもキャッシュが良く効く。
なぜならノードのアドレスが「ランダム」ではないから。
955デフォルトの名無しさん
2022/12/09(金) 15:08:04.74ID:gsPXBpPV どっちもヤバくて草w
956デフォルトの名無しさん
2022/12/09(金) 16:41:02.60ID:WiULU0Bz 自己完結すれば最速で完結するが
机上で完結しないことを望むなら呪術的な対価を要求されるんだよ
机上で完結しないことを望むなら呪術的な対価を要求されるんだよ
957デフォルトの名無しさん
2022/12/09(金) 17:13:50.21ID:TeKO8AU2 >自己完結すれば最速で完結する
アタオカの巣窟になりつつあるな
アタオカの巣窟になりつつあるな
958デフォルトの名無しさん
2022/12/09(金) 18:30:00.75ID:rq1aZYl+ 絶対にベンチマークの数値は出せないリンクリストおじさん
いつまでrustに粘着してんの
いつまでrustに粘着してんの
959デフォルトの名無しさん
2022/12/09(金) 21:16:01.37ID:o+3mnUPM 馬鹿は想像力が無いから、理論から計算できない上に、仮定も間違っているから
間違った条件で実験して間違った実験結果を出して、それを信じてしまう。
Stroustrup氏もその一部。
間違った条件で実験して間違った実験結果を出して、それを信じてしまう。
Stroustrup氏もその一部。
960デフォルトの名無しさん
2022/12/09(金) 21:33:34.50ID:o+3mnUPM >>959
そんな馬鹿でも実際にプログラムしてる人は自分の間違いに気付くが、
彼と彼の取り巻き達はベンチマーク以外のプログラムはしないので
一生気付かない。そして自分達は実験したから正しいんだと主張し
まくって、それを信じた人類は謝った認識を持って文明の発達が遅れる。
そんな馬鹿でも実際にプログラムしてる人は自分の間違いに気付くが、
彼と彼の取り巻き達はベンチマーク以外のプログラムはしないので
一生気付かない。そして自分達は実験したから正しいんだと主張し
まくって、それを信じた人類は謝った認識を持って文明の発達が遅れる。
961デフォルトの名無しさん
2022/12/09(金) 22:18:43.15ID:STy7gq1K 真面目に言うならStroustrupの指摘したリンクリストは、愚直で安直な1要素で次を示すようなデータ構造はバカのすることで間違いない。
というかStroustrupはプログラマのために教え諭してるのに対して、自分が攻撃されたと思い込み、稀なケースで「LinkedListがArrayListより速いことがある」なんていい年してイキっててもしょうもないだろう?
「非常に近いアドレス」とか自分で参照効率が悪いことを理解してるのに、何がしたいのかサッパリわからん。ぴろゆきみたいに見えない仮想的にロンパーしたいの?
https://www.youtube.com/watch?v=YQs6IC-vgmo
ま、今ではUnrolled Linked listとか普通の配列やB-Treeなどと区別がつかない参照の局所性が大幅に向上しているものもあるから
そんなことで騒ぐのはもはやジジイの域だなあ、10年前の出来事じゃん・・・・
というかStroustrupはプログラマのために教え諭してるのに対して、自分が攻撃されたと思い込み、稀なケースで「LinkedListがArrayListより速いことがある」なんていい年してイキっててもしょうもないだろう?
「非常に近いアドレス」とか自分で参照効率が悪いことを理解してるのに、何がしたいのかサッパリわからん。ぴろゆきみたいに見えない仮想的にロンパーしたいの?
https://www.youtube.com/watch?v=YQs6IC-vgmo
ま、今ではUnrolled Linked listとか普通の配列やB-Treeなどと区別がつかない参照の局所性が大幅に向上しているものもあるから
そんなことで騒ぐのはもはやジジイの域だなあ、10年前の出来事じゃん・・・・
962デフォルトの名無しさん
2022/12/09(金) 22:39:25.91ID:rOm/uTcN ジジイと言うかその人は
1) 頭が悪くて
2) 経験もなくて
3) その自覚が無い
というかわいそうな存在だからあんま刺激しちゃダメ
こうなってくるとこの手のひとは
あとは粘着するだけのマシンと化すから要注意だぞみんな
1) 頭が悪くて
2) 経験もなくて
3) その自覚が無い
というかわいそうな存在だからあんま刺激しちゃダメ
こうなってくるとこの手のひとは
あとは粘着するだけのマシンと化すから要注意だぞみんな
963デフォルトの名無しさん
2022/12/10(土) 00:05:08.23ID:s9w4cjy9 自己完結は悪と思ってるから他者に粘着するんでしょ
964デフォルトの名無しさん
2022/12/10(土) 01:32:53.73ID:ExYz252Q コンピュータサイエンスやプログラミング関連の学者は、アホばっかだからな。
965デフォルトの名無しさん
2022/12/10(土) 01:33:28.16ID:CrLmIOQg Rustではポインタの代わりに要素のインデックスで管理するのが基本であり安全
リストもツリーもグラフもこれで実装可能
これはポインタがない言語では当たり前のように使われていた方式
これまでが間違ってた
ポインタなどというものは数百万行とかあるプログラムで正しく使うのは無理
世界中のエンジニアがそのために苦労している
ポインタとNULLは完全に失敗
リストもツリーもグラフもこれで実装可能
これはポインタがない言語では当たり前のように使われていた方式
これまでが間違ってた
ポインタなどというものは数百万行とかあるプログラムで正しく使うのは無理
世界中のエンジニアがそのために苦労している
ポインタとNULLは完全に失敗
966デフォルトの名無しさん
2022/12/10(土) 01:36:13.33ID:CrLmIOQg ちなみにインデックス管理がゴミだったのはCみたいに配列の要素チェックがなく
生アドレスを直接触れる仕様だったせい
本来この仕様があり得ない
これならポインタの方がマシだし楽だからという理由でポインタが乱用されてきた
生アドレスを直接触れる仕様だったせい
本来この仕様があり得ない
これならポインタの方がマシだし楽だからという理由でポインタが乱用されてきた
967デフォルトの名無しさん
2022/12/10(土) 01:42:29.86ID:ExYz252Q968デフォルトの名無しさん
2022/12/10(土) 01:44:30.98ID:ExYz252Q アメリカのコンピュータ学者は馬鹿。
自ら馬鹿な方法ばかり想定しているから遅いと思い込んでいる。
それを鵜呑みにしてる学生は大ばか者。
自ら馬鹿な方法ばかり想定しているから遅いと思い込んでいる。
それを鵜呑みにしてる学生は大ばか者。
969デフォルトの名無しさん
2022/12/10(土) 01:46:18.37ID:ExYz252Q だからアメリカ人の作るソフトは遅い上にサイズも大きいんだな。
日本人の作るソフトはコードも小さいし、データも小さいし、速度も速い。
全然違う。
なぜなら、アメリカ人がイマジネーションが足りなくて馬鹿なのに自覚が無いから。
なのに、詐欺的手法によってアメリカ製ソフトを蔓延させた。
日本人の作るソフトはコードも小さいし、データも小さいし、速度も速い。
全然違う。
なぜなら、アメリカ人がイマジネーションが足りなくて馬鹿なのに自覚が無いから。
なのに、詐欺的手法によってアメリカ製ソフトを蔓延させた。
970デフォルトの名無しさん
2022/12/10(土) 01:47:54.33ID:48CeiLls ポインタてのは、CPUの汎用レジスタの
アドレッシングモードを考慮して
OSをコーディングしやすくする仕組みだから
アドレッシングモードを考慮して
OSをコーディングしやすくする仕組みだから
レス数が950を超えています。1000を超えると書き込みができなくなります。
ニュース
- バリ島で男子生徒ら集団万引きか、防犯カメラ映像が拡散 京都の大谷中学・高校が「窃盗行為」謝罪★4 [七波羅探題★]
- 中国軍機レーダー照射、トランプ氏沈黙突く 試される日本外交 [蚤の市★]
- 【広島】「万引きした人を追跡」コンビニ店員の男性(46)を果物ナイフで刺したか 中国籍の少年(17)を殺人未遂容疑で現行犯逮捕 [ぐれ★]
- 【地震】青森県で震度6強 長周期地震動も 津波注意報すべて解除 ★7 [ぐれ★] [ぐれ★]
- 【サッカー】58歳カズ「オファーが来ている」 J3福島と近日中にも交渉 早ければ年内にも決断 [征夷大将軍★]
- 【速報】気象庁は津波注意報すべて解除 [蚤の市★]
- 【実況】博衣こよりのえちえち朝こよ🧪
- 【悲報】高市早苗の擬人化がXで大バズりwwwwwwwwwwww [455031798]
- ヨッシー、ヘイホー、テレサ ←こいつらwwwwwwwww
- さかまた「過呼吸になった」かなた「耳聞こえない」ござる「声出ない」まつり「ご飯食べれない」
- くそしてかがやけ
- 【画像】カリカリ女、脱いだらすごい😨 [632966346]
