X



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

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
垢版 |
2023/02/25(土) 09:49:46.74ID:VRyB88xR
C++の色々配慮してめんどくさい感じは好きだけど、実務になったらメモリ安全性とか考えて今後Rustに変わっていくんかな?
0129デフォルトの名無しさん
垢版 |
2023/03/04(土) 10:59:11.20ID:RFNVa0Qi
>>127
何処が可笑しいか指摘してくれ
おれには判らん
0130デフォルトの名無しさん
垢版 |
2023/03/04(土) 11:05:58.63ID:54Un32Sk
>>129
「CやC++に置き換わる言語の話」なんて誰もしていない
「CやC++に取って代わる」あるいは「CやC++を置き換える」と言いたいのだろう

あるいは本気で「CやC++に置き換わる言語の話」をしているのなら今度こそ本当に頭がおかしいな
0131デフォルトの名無しさん
垢版 |
2023/03/04(土) 11:14:10.28ID:RFNVa0Qi
それがてにをはどどう関係あるの?
0132デフォルトの名無しさん
垢版 |
2023/03/04(土) 11:23:10.42ID:33wAkDSd
>>126
VB6はトレースGCではないけど参照カウンタGC方式のGC言語
VB6オブジェクトは裏で参照カウンタが自動的に使われていてそれにより使われなくなったメモリを回収している
ちなみにC++のshared_ptrなども参照カウンタ方式だが裏で勝手に使われることはなく必須でもなくプログラマー裁量なのでC++はGC言語ではない
0133デフォルトの名無しさん
垢版 |
2023/03/04(土) 11:59:27.29ID:Ss9j+0Cw
Rustに期待している人のフラストレーションを解消したいなら
フルスクラッチでOSを書くくらいしか方法はないだろうね
OSの普及は更に至難の技だけども
0134デフォルトの名無しさん
垢版 |
2023/03/04(土) 12:08:40.51ID:2fdiw2OM
(実務経験ゼロ + 論理的思考力の欠落 + 自己愛性パーソナリティ障害) * Rustへの執着 = 通称複製おじさん
0135デフォルトの名無しさん
垢版 |
2023/03/04(土) 12:51:29.76ID:SdQ3Tgr2
           |
            |  彡⌒ミ
           \ (´・ω・`)またGCの話してる
             (|   |)::::
              (γ /:::::::
               し \:::
                  \
0137デフォルトの名無しさん
垢版 |
2023/03/05(日) 00:59:18.56ID:eidG4gk+
>>133
フルスクラッチの新たなOSを普及させるのは難しいだろうが
>>74に記事があるようにGoogleがRustのみで新OSを作ってるな
あとAndroidもLinuxもWindowsもRustの一部採用を始めて
この流れはOSに限らず全てのシステムでRust化が進んでいくのだろう

GoogleとMicrosoftがRust言語でOS開発
https://xtech.nikkei.com/atcl/nxt/column/18/00692/042700054/
0138デフォルトの名無しさん
垢版 |
2023/03/05(日) 09:30:23.81ID:B0+xSixt
>>137
次第に現行プロジェクトを置換して増えていくなんて展開はありえないっての
AndroidやWindowsをRust製のOSで置換するくらいしかストーリとしてはない
Linuxに入っているRustコードは>>39で書いた通り
0139デフォルトの名無しさん
垢版 |
2023/03/05(日) 10:00:51.19ID:N4QaJnep
私はRustで年収1億稼ぎましたみたいな話はないのかよ
マイナープロジェクトでちょっと使われたら勝利なのかよ
0142デフォルトの名無しさん
垢版 |
2023/03/05(日) 11:49:22.14ID:nmaj3sub
Rustで検証してうまくいったらそのままCにコンバートすれば余計なチェックコードが削れてる速く動く

とかね。
0143デフォルトの名無しさん
垢版 |
2023/03/05(日) 14:28:35.02ID:FAqgXVt3
てかGCって別に悪いもんじゃねぇしな
0144デフォルトの名無しさん
垢版 |
2023/03/05(日) 14:30:11.56ID:FAqgXVt3
>>133
それよりもグラフィックソフト作ったほうが広まると思うけどね
Blender参考に3Dモデリングソフトつくってよ
0145デフォルトの名無しさん
垢版 |
2023/03/05(日) 14:54:49.80ID:B0+xSixt
>>144
それでは心が満たされないんだよ
GCの話しかしない人とか
0146デフォルトの名無しさん
垢版 |
2023/03/05(日) 15:15:15.70ID:WdTi9AcG
>>143
GCの有無はその言語がカバーできる範囲の差となり優劣関係が明白
GCのない言語は全てをカバーできる
0147デフォルトの名無しさん
垢版 |
2023/03/05(日) 15:45:42.10ID:09jM8Cxo
>>146
UEとかのゲームエンジンは当たり前だがついてる
うまく付き合ってくほうが大事
0148デフォルトの名無しさん
垢版 |
2023/03/05(日) 15:50:56.78ID:7nv7saAE
本当にGCの話しかしないんだね
GC以外のことを語る知識がない
GCはこの板見てる人はほぼ誰でも知っているだろう
0149デフォルトの名無しさん
垢版 |
2023/03/05(日) 15:58:09.36ID:Y+o3TKYe
色んな言語のライブラリがC++(や最近はRust)で書かれているのを考えると
C++とRustが王者決定戦になるのは当たり前じゃね?
0152デフォルトの名無しさん
垢版 |
2023/03/06(月) 00:49:06.50ID:pFRSokg0
そりゃラップするだけなんだから作れるだろ
アホか
0155デフォルトの名無しさん
垢版 |
2023/03/06(月) 13:40:13.02ID:diWxUEyJ
           |
            |  彡⌒ミ
           \ (´・ω・`)またGCの話してる
             (|   |)::::
              (γ /:::::::
               し \:::
                  \
0157デフォルトの名無しさん
垢版 |
2023/03/06(月) 17:14:45.53ID:93HR+LQR
ふと思ったんだけど、Rustのmutableな構造体の中にimmutableなフィールドって持てるんだっけ?
0158デフォルトの名無しさん
垢版 |
2023/03/06(月) 20:00:50.97ID:BPh5rEIJ
>>157
そういえば、C++のcv属性は、論理和方式で、constは足し算の様に0から1に
変わるが、mut 属性はそうはならないだろうから、どうなるんだろうな。
constは意味的に考えてもcastしない限りは、、constなものはいくらやっても
書き込めるようにはならない、というのは安全性から当然なんだけど、
mutだとそうはいかない。
0159デフォルトの名無しさん
垢版 |
2023/03/06(月) 20:09:02.49ID:BPh5rEIJ
>>158
mutとconstは逆さまの働きみたいだから、どっちで行くかは言語設計者の自由と
思われがちだけど、constな構造体のメンバは勝手に全てconst扱いになるという
単純な論理に出来るけど、mut方式の場合は、constキーワードも別に必要になりそう。
0160デフォルトの名無しさん
垢版 |
2023/03/06(月) 21:18:31.55ID:HKTArltY
>>157
他の言語と同じでsetter相当をなくしてgetterだけにすればいい
専用のラッパーを作る方法もあるができて当然の機能なので誰もやらないだろうね
0161デフォルトの名無しさん
垢版 |
2023/03/06(月) 21:44:09.47ID:l1NoBYC6
>>159
C++でconstを誤用しているのとは異なり
Rustではconstを正しく定数の意味で使っているので注意
つまりconstは定数でありコンパイル時に静的に定まる
もちろんconstとは別の概念としてmutableとimmutableがあり、これらは可変性の有無を表す
さらにそれらと別の概念として所有権があり、所有権を持っていればimmutableであろうと関係なくmutableな変数へ移すことで可変性を得られる
一方で所有権を持たないimmutableな参照からは可変性を得られない
0163デフォルトの名無しさん
垢版 |
2023/03/06(月) 22:01:32.22ID:l1NoBYC6
>>162
そうだよ
実行するたびにあるいは関数を呼ぶたびに値が変わりうる変数(=静的に値が定まらず変わりうること)に対して、
変数がimmutableであることを間違えてconstと付けてしまった
そのためC++では定数(=静的に値が定まること)の場合は苦肉の策でconstexprと変な名前を付けることになった
0164デフォルトの名無しさん
垢版 |
2023/03/06(月) 22:21:12.53ID:1935XsNt
>>163
C++では単に値が`constant'って意味で使っただけではないのかな?
それを誤用とは言わんと思う

ところで何でconstexprではないconst変数は
静的に定まらないことになってるの?
0165デフォルトの名無しさん
垢版 |
2023/03/06(月) 22:37:19.16ID:l1NoBYC6
>>164
もちろんC++は整数などに限ればconstで静的な定数となるが
それ以外C++のconstは定数ではなく静的にコンパイル時に定まらない
そのため真のconstを表すためにconstexprというキーワードを新たに用意する本末転倒な状況となった
0166デフォルトの名無しさん
垢版 |
2023/03/06(月) 22:52:19.69ID:1935XsNt
以下の2つは矛盾してないかい?

>>163
>実行するたびにあるいは関数を呼ぶたびに値が変わりうる変数(=静的に値が定まらず変わりうること)に対して、
>変数がimmutableであることを間違えてconstと付けてしまった

>>164
>もちろんC++は整数などに限ればconstで静的な定数となるが

2つ目はなるんだっけ?
0167デフォルトの名無しさん
垢版 |
2023/03/06(月) 22:53:11.95ID:1935XsNt
>>165
>そのため真のconstを表すためにconstexprというキーワードを新たに用意する本末転倒な状況となった
「本末転倒」とは違うと思うよ
0168デフォルトの名無しさん
垢版 |
2023/03/06(月) 23:09:16.19ID:h8dbx3na
>>166
C++で何らかのクラスのインスタンスを作ってconstに入れることを考えてみるとわかりやすいよ
もちろんこのconstのインスタンスはコンストラクタの引き数の値によって変わるから静的な定数じゃないよね
つまり単なるimmutableな変数に過ぎないわけだけどC++はそれに対してconstと間違えて名付けちゃった
だから本当の定数に対してconstexprと名付けることになった有名な話だよ
0169デフォルトの名無しさん
垢版 |
2023/03/06(月) 23:20:34.22ID:1935XsNt
>>168
>つまり単なるimmutableな変数に過ぎないわけだけどC++はそれに対してconstと間違えて名付けちゃった
C++のconstは単なる`constant'の意味で
静的な定数という意味でないというだけなのでは?
本当に「間違えて」名付けたのかな?
俺にはC++のconstにあなたが「間違えて」静的な定数という意味を
期待しているだけに見えるのだが?
0170デフォルトの名無しさん
垢版 |
2023/03/06(月) 23:31:32.57ID:l1NoBYC6
>>169
環境によって実行毎に、または、関数の引き数によって関数が呼ばれるごとに、>>168の示してる例だと値が変わりうる
その変わりうるものに対して、C++がconstと付けたのは失敗としか言いようがないのではないか
そしてC++は本当にconstantなものに対して、後からconstexprと付けざるをえなかったことが、C++の失敗を誰の目にも明らかにしている
0171デフォルトの名無しさん
垢版 |
2023/03/06(月) 23:33:40.69ID:1935XsNt
>>170
>環境によって実行毎に、または、関数の引き数によって関数が呼ばれるごとに、>>168の示してる例だと値が変わりうる
これはどいう状況か分かりにくい? ソースで書いてみて
0172デフォルトの名無しさん
垢版 |
2023/03/06(月) 23:42:46.60ID:l1NoBYC6
>>171
関数に渡ってきた毎回変わりうる引き数を使ってそれを渡してインスタンス作成してconstに突っ込む場合でもよい
あるいは環境変数やargv使ってインスタンス作成でもよい
いずれも毎回インスタンスの値が変わりうるため定数ではないがC++ではconstと付けてしまった
そして本当の定数にconstexprと付けた
0174デフォルトの名無しさん
垢版 |
2023/03/06(月) 23:52:15.11ID:p7JhiTtQ
ただし*const Tのconstだけはコンパイル時定数の意ではなく、C++と同じで書き換えを行えないという意味です
一貫性がありませんね
0175デフォルトの名無しさん
垢版 |
2023/03/06(月) 23:56:33.22ID:h8dbx3na
>>169
数字でも物理でも定数は静的に定まるものだよ
でもC++はconstをimmutableの意味で間違えて名付けてしまいました
そして定数を表すためにconstを使えなくなりconstexprと名付けたという誰でも知ってる有名な話だよ
0176デフォルトの名無しさん
垢版 |
2023/03/07(火) 00:01:46.05ID:gZ1LpnCS
>>175
>でもC++はconstをimmutableの意味で間違えて名付けてしまいました
とあなたが思っているだけではないかな?
C++のconstにあなたなが「間違えて」静的に定まるものを期待しているだけでは?
0177デフォルトの名無しさん
垢版 |
2023/03/07(火) 00:09:47.95ID:6eBCzRN0
言われてみれば数字や物理で定数は静的に定まる値だな
どうせC++で静的に定まる値を示すキーワードも必要となるんだから素直にそれをconstにしておくべきだったか
設計ミスだな
0179デフォルトの名無しさん
垢版 |
2023/03/07(火) 01:08:45.38ID:gZ1LpnCS
>>177
>言われてみれば
www
0180デフォルトの名無しさん
垢版 |
2023/03/07(火) 01:27:52.75ID:phr7A4jU
immutableとconstantの違いを区別できていない人がimmutableに対してconstと命名してしまったのかな
そのためconstantに対してconstと命名できなくなってconstexprと命名したと
0181デフォルトの名無しさん
垢版 |
2023/03/07(火) 01:31:47.04ID:CjRtBzJ1
同じ言葉や字句でも言語ごとにその概念が指すものは異なる
相対主義的に考えなさい
相手の価値観を理解しなければ説得力は生まれません
0182デフォルトの名無しさん
垢版 |
2023/03/07(火) 02:21:18.68ID:oSHTm7sl
・y = ax (a=10である)
aをimmutableと呼ぶかconstantと呼ぶか
・y=f(a) (a=10である)
f(a)をconstantと呼ぶかconstant expressionと呼ぶか

まあ考え方次第だよな
0186デフォルトの名無しさん
垢版 |
2023/03/07(火) 08:16:15.53ID:X5urLXgj
>>182
あと例を出すにしても
整数は特殊でconstexprでなくconstでも静的定数になる例外だから例として最も不適切
0187デフォルトの名無しさん
垢版 |
2023/03/07(火) 09:21:06.13ID:hj+ftEk+
自演してRustゴリ推し他言語叩きをしてるのは
複製おじさんと呼ばれてるRustスレでは有名な荒らし
しかもそいつが「RustJP公式 」の中の人で間違いなさそうって話だから手に負えない
0189デフォルトの名無しさん
垢版 |
2023/03/07(火) 11:40:31.33ID:gZ1LpnCS
>>180
それはお前用語なんじゃね?
0191デフォルトの名無しさん
垢版 |
2023/03/07(火) 12:47:12.28ID:CHI/c7S+
aを10としたときにコンパイル時
最適化してしまうかaという入れ物残しとくか更にはf(a)も計算して結果だけ使うか
0192デフォルトの名無しさん
垢版 |
2023/03/07(火) 21:59:54.08ID:6AJw5hNk
整数はconstやconstexprの有無に関係なくコンパイル時に最適化されるから整数を持ち出して来ても意味がない
C++ならクラスのインスタンスを生成する場合などを考えるとわかりやすい
コンパイル時点でそのインスタンスを定数化できる時にconstexprを使い静的に定数となる
そうでなく実行時にならないと値が定まらない変数となる時はconstexprを使えない
その変数がimmutableつまり生成以降は値を変更できない時はconstを使う
0193182
垢版 |
2023/03/07(火) 22:28:59.56ID:oSHTm7sl
constというものの表現を語るうえで言語依存しない形で書いただけなので
少数でも文字列でも適当に読み替えてね
0194デフォルトの名無しさん
垢版 |
2023/03/08(水) 00:26:55.95ID:Ax/TB2dR
>>192
C++の命名ミスだな
定数にconstと命名すべきであり
immutableな変数にconstと命名すべきでなかった
0198デフォルトの名無しさん
垢版 |
2023/03/08(水) 01:22:37.49ID:9h+oJZcX
結果的に後からみればC++の命名ミスなんだろうが歴史的経緯で仕方ないだろ
昔はimmutableとconstantの概念の区別が曖昧だった
0201デフォルトの名無しさん
垢版 |
2023/03/08(水) 07:29:50.16ID:OMAPV4fU
>>200
Rustでconstは常に静的な定数を表す
*constはconstとは全く別のものであり予約語を最小限にするための使い回し組み合わせ

両者は種別も異なるため混乱することもない
constは定数の定義なのでこの位置に来る
let foo: i32 = 12345;
const FOO: i32 = 12345;

*constは生ポインタの型を示すのでこの位置に来る
const BAR: &i32 = &FOO;
const BAZ: *const i32 = &FOO;
このように両者は全く別物で出現位置も異なり共存もでき混乱することもない

この生ポインタはunsafe Rustでしか使わないため通常は出て来ない
そのために新たな予約語を消費するのは馬鹿げているため既存の組み合わせという合理的な選択をした
0202デフォルトの名無しさん
垢版 |
2023/03/08(水) 07:30:57.28ID:/qygPgTx
constはCからの流れだしな。
元々Cがシステムプログラミング向けだったことを思えば、「リードオンリーセクションに置け」っていうくらいのつもりだったんだろ。
定数は#defineで指定しろって感じかな。
0203デフォルトの名無しさん
垢版 |
2023/03/08(水) 08:49:19.07ID:w2ee/I/N
>>201
> この生ポインタはunsafe Rustでしか使わないため通常は出て来ない

safeの範囲で普通に使うけど
参照の同一性比較とか書いたことないの?
0204デフォルトの名無しさん
垢版 |
2023/03/08(水) 09:00:01.62ID:OMAPV4fU
>>203
参照の比較は生ポインタ直接比較ではなくstd::ptr::eqを使うのが行儀良いマナー
参照を渡せば*constに自動でcoerceされるためコードに*constを記述する必要はない
0206デフォルトの名無しさん
垢版 |
2023/03/09(木) 19:02:01.89ID:33ubz+zP
Rustは優秀なんだろうけど、言語仕様が難解なのと、「〜の分野ならRust」と言えるものがないから広がりにくいんだろうね
0207デフォルトの名無しさん
垢版 |
2023/03/11(土) 11:27:51.97ID:E47xdjIQ
それにRustは左翼的な弱者救済的な雰囲気が漂う。
VBも同じ理由で使ってるだけで駄目プログラマとみなされていったから、
同じようにRustを使ってるだけで駄目プログラマ決定されてしまう気がする。
0208デフォルトの名無しさん
垢版 |
2023/03/11(土) 11:29:57.74ID:E47xdjIQ
Excelもそうだ。Excelを使ってるだけで弱者扱いされてしまうようになっている。
VBもそうなったから、中味はそう変わってないのに名前を変えてC#にされた。
しかし、だんだんと、C#もVBと同じように馬鹿プログラマ専用言語とみなされる
ようになってきてる。
Rustもきっとそうなるだろう。
0209デフォルトの名無しさん
垢版 |
2023/03/11(土) 14:27:01.34ID:lvldJuuV
Rustも悪くないけど日本語のドキュメントが酷すぎるかなあ。
たとえば第七章のパッケージとグレートの話とかでも
-------
最初に学ぶモジュールシステムの要素は、パッケージとクレートです。 クレートはバイナリかライブラリのどちらかです。 クレートルート (crate root) とは、Rustコンパイラの開始点となり、クレートのルートモジュールを作るソースファイルのことです
--------

英文の方は版が新しいこともあってか

The first parts of the module system we’ll cover are packages and crates.

A crate is the smallest amount of code that the Rust compiler considers at a time. Even if you run rustc rather than cargo and pass a single source code file (as we did all the way back in the “Writing and Running a Rust Program” section of Chapter 1), the compiler considers that file to be a crate.
と、いう具合で以下だいぶ丁寧に解説してる。
パッケージにはa library crateとあるから一つだけなの?とChatGPTに尋ねたら複数入ることもあると断言されたけど。
0210デフォルトの名無しさん
垢版 |
2023/03/11(土) 14:31:08.67ID:+PZMhSrI
面倒ならとりあえずDeepLに掛ければ良いのにね
> モジュールシステムで最初に取り上げるのは、パッケージとクレートです。
>
> クレートは、Rustコンパイラが一度に考慮する最小のコード量です。cargoで
> はなくrustcを実行し、1つのソースコードファイルを渡したとしても(第1章
> の「Rustプログラムの作成と実行」でやったように)、コンパイラはそのファ
> イルをクレートと見なします。
0211デフォルトの名無しさん
垢版 |
2023/03/11(土) 16:27:23.47ID:BtFFfdHV
>>209
ひどすぎるのには同意するが
それはボランティアによる非公式な翻訳で
識者による監修や査読がされてないから
質が低いのは当然といえば当然

一部専門用語を除くと機械翻訳のほうが
それよりはマシな訳になることが多いので
多少英語が苦手でも公式を見たほうが断然効率がいいよ
0212デフォルトの名無しさん
垢版 |
2023/03/11(土) 16:39:48.49ID:47WJOH0Y
>>209
7章の最初のページ見ればそれぞれどういう関係なのか一目瞭然
単数形複数形の違いを丁寧に訳してなければ重要な意味が日本語訳では消えてるかもね

・Packages: A Cargo feature that lets you build, test, and share crates
・Crates: A tree of modules that produces a library or executable
・Modules and use: Let you control the organization, scope, and privacy of paths
・Paths: A way of naming an item, such as a struct, function, or module
0213デフォルトの名無しさん
垢版 |
2023/03/11(土) 17:28:34.44ID:/GMTezZ0
>>209
そのページは原文の2年半以上前の状態止まってる
日々改善されてるOSSで数年単位の遅れがあると全く役に立たないから
現状はRustの日本語ドキュメントは無いものと思っておいたほうがいい
0214デフォルトの名無しさん
垢版 |
2023/03/11(土) 18:00:56.32ID:bkYlWMhE
>>213
原文のいつの状態を反映した訳なのか全然管理できてないらしいからね
アップデートは望み薄
0215デフォルトの名無しさん
垢版 |
2023/03/11(土) 19:45:03.63ID:+PZMhSrI
規格がないので二流感が拭えない
かと言ってC++が登場したときのように
今はプログラミング言語の実装が
いくつも出てくる状況でもないのかな?
0217デフォルトの名無しさん
垢版 |
2023/03/11(土) 22:59:17.84ID:+PZMhSrI
実装は複数あった方がメリットが大きいよ
0219デフォルトの名無しさん
垢版 |
2023/03/11(土) 23:19:14.88ID:ChsfUoNW
実装が複数あることはメリットもあるがデメリットも多くユーザを混乱させてきた
一方で言語仕様とその実現方法が確定して枯れた時は複数実装のメリットが上回る
Rustについては更なる理想の言語に向けて公開todoリストも多くまだ発展段階なので複数実装は向いていない
もちろん従来的な使い方ならば現状のRustで既に十分に利用できる
0220デフォルトの名無しさん
垢版 |
2023/03/11(土) 23:24:45.49ID:uRw385pv
>>218
ユーザーフォーラムのしかもたった二人の回答を「公式コミュニティの見解」にしてしまうオツムの人達だからさ一般常識があると思ったら大間違い
0221デフォルトの名無しさん
垢版 |
2023/03/11(土) 23:30:52.30ID:+PZMhSrI
>>219
3行目は全否定しておく

CやC++に複数の実装があった第一の要因は開発ツールが売れたという背景がある
Rustに限らず開発ツールは最早ビジネスとしては成り立たなくなってしまった
0223デフォルトの名無しさん
垢版 |
2023/03/11(土) 23:39:25.95ID:ChsfUoNW
Rustは公式が提供するcargoやrust-analyzerで開発環境は十分だもんな
もちろんrust-analyzerはLSPなのでVScodeなどの既存の統合開発環境で使える
0224デフォルトの名無しさん
垢版 |
2023/03/11(土) 23:51:17.37ID:3ENT9RfU
>>220
Rustユーザーの大半は英語のドキュメントを直接見てるからな
同じRustユーザーというだけであのリテラシーレベルと同類扱いされるのは誠に遺憾
0225デフォルトの名無しさん
垢版 |
2023/03/12(日) 06:07:53.91ID:b0Zzr0Fl
>>212
一目瞭然ってことはないよ。
わかってるやつにはわかるっていうレベル。
特にmodule and use以下で戸惑うと思うよ。

Rustはプログラミング言語としてはCとかで神経使っていたところで楽させてくれる感じだけど、新人を呼び込むにはドキュメントがまずいかなあ。
0226デフォルトの名無しさん
垢版 |
2023/03/12(日) 09:19:37.91ID:XJpeOWKz
前にもこれどこかで同じレスしたことあるけど
Javascriptってドキュメントすっごい充実してるよな
2000年以前はHTMLとJavascript一緒になった解説本の最後の方に申し訳程度に乗ってたくらいで
あとは某とほほサイト見るくらいしかなかったけど

最近ちらっとみたらすごいのな
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Array/find
これは適当にクリックした特に選んでない一例だけど
ちょっと過剰なくらい説明と例が乗っててスゴイと思ったわ
Rustにここまでを要求したほうがいいとも思わんけど
いつかみんなが使う言語になったときはそうなってるのかもしれん
■ このスレッドは過去ログ倉庫に格納されています

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