公式
https://www.rust-lang.org/
https://blog.rust-lang.org/
https://github.com/rust-lang/rust
公式ドキュメント
https://www.rust-lang.org/learn
Web上の実行環境
https://play.rust-lang.org
※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 part20
https://mevius.2ch.net/test/read.cgi/tech/1677771928/
ワッチョイスレ
プログラミング言語 Rust 4【ワッチョイ】
https://mevius.2ch.net/test/read.cgi/tech/1514107621/
探検
Rust part21
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2023/08/15(火) 22:24:39.45ID:xzxy4cgp174デフォルトの名無しさん
2023/09/09(土) 16:45:26.09ID:Ig5iuvnc175デフォルトの名無しさん
2023/09/09(土) 18:12:41.11ID:hWR6yEQh >>174
>今は違うと強調した
本気で言っているのなら
ちょっと心配になるレベルのコミュ□だぞ
か、またはネット□□師か?
あと後出し皮肉オジは煽りオジと同化しているからやめろ
Rustで煽りオジはサイコパス確定した
https://mevius.5ch.net/test/read.cgi/tech/1693451813/93
>軽く煽った後は、本業に戻る、だよ 急がないし
>今は違うと強調した
本気で言っているのなら
ちょっと心配になるレベルのコミュ□だぞ
か、またはネット□□師か?
あと後出し皮肉オジは煽りオジと同化しているからやめろ
Rustで煽りオジはサイコパス確定した
https://mevius.5ch.net/test/read.cgi/tech/1693451813/93
>軽く煽った後は、本業に戻る、だよ 急がないし
176デフォルトの名無しさん
2023/09/09(土) 19:36:26.65ID:pYp2eZcM オジ連呼厨は他人に絡み過ぎ
このプログラム板では人でなくプログラムや技術に目を向けろ
>>165
cargoはrustcとハードリンク一体化してるようにRust用かつ公式
yarnとnpmで分裂しているのとは異なり一体化してくれていてありがたい
このプログラム板では人でなくプログラムや技術に目を向けろ
>>165
cargoはrustcとハードリンク一体化してるようにRust用かつ公式
yarnとnpmで分裂しているのとは異なり一体化してくれていてありがたい
177デフォルトの名無しさん
2023/09/09(土) 19:51:44.43ID:qxfK5/Yz >>165
大統一パッケージマネージャ作ってくれ
大統一パッケージマネージャ作ってくれ
178デフォルトの名無しさん
2023/09/09(土) 20:39:12.68ID:Rk1XYFyW debとかrpmとか
179デフォルトの名無しさん
2023/09/09(土) 21:06:18.16ID:IggX53ET >>178
aptで良いと思う
aptで良いと思う
180デフォルトの名無しさん
2023/09/09(土) 21:31:02.60ID:1qPxYBdj181デフォルトの名無しさん
2023/09/09(土) 21:33:52.69ID:Rk1XYFyW >>179
aptはdebパッケージの管理ツール
aptはdebパッケージの管理ツール
182デフォルトの名無しさん
2023/09/09(土) 22:07:42.11ID:qxfK5/Yz >>178
依存crateをいちいちapt-getしてくるのさすがに大変すぎないか?
依存crateをいちいちapt-getしてくるのさすがに大変すぎないか?
183デフォルトの名無しさん
2023/09/10(日) 10:57:43.69ID:yM7j2B0I >>165
antも廃れたな
antも廃れたな
184デフォルトの名無しさん
2023/09/10(日) 13:28:10.69ID:NvPhT1QM185デフォルトの名無しさん
2023/09/10(日) 14:52:06.76ID:9TiyMpcM mavenとかまだ使ってるとこあるの?
普通はgladleだよね?
未だにmavenだとしたらちょっとそこはヤバいと思う。
普通はgladleだよね?
未だにmavenだとしたらちょっとそこはヤバいと思う。
186デフォルトの名無しさん
2023/09/10(日) 15:10:16.28ID:yM7j2B0I 今でも使ってるなんて誰も言ってないのでは
187デフォルトの名無しさん
2023/09/10(日) 15:36:29.89ID:NvPhT1QM いや、未だにmavenって認識が間違ってるよ。
定型的な開発サイクルであればmavenで十分だしそこで明確なツラミもないのにgradleに移行しようって判断するようなチームはヤバい。
とはいえ今だと初手でgradle選択するチームが多いだろうね。
定型的な開発サイクルであればmavenで十分だしそこで明確なツラミもないのにgradleに移行しようって判断するようなチームはヤバい。
とはいえ今だと初手でgradle選択するチームが多いだろうね。
188デフォルトの名無しさん
2023/09/10(日) 16:18:37.72ID:yM7j2B0I 自分で質問して自分で答えるタイプの人でしたか
189デフォルトの名無しさん
2023/09/10(日) 17:15:47.84ID:DnwEEEwp みんなjavaに詳しいのね
190デフォルトの名無しさん
2023/09/11(月) 00:02:48.34ID:RxCGMczZ ビルドのためにグルービーとかいう言語を使わなければいけないことに異常性を感じないのかjavaの人たち
191デフォルトの名無しさん
2023/09/11(月) 00:13:23.96ID:aoFlyd5o MakefileやCMakeも大概だしビルドは魔境
192デフォルトの名無しさん
2023/09/11(月) 00:18:19.95ID:/EmpjAru Groovy は、Rubyist なら分かる。ほぼ同じ
193デフォルトの名無しさん
2023/09/11(月) 00:23:10.62ID:ul9tFljX >>190
今のgradleはgroovyじやなくてkotlinで書けるよ
今のgradleはgroovyじやなくてkotlinで書けるよ
194デフォルトの名無しさん
2023/09/11(月) 09:54:06.45ID:lXcI/Ajd もう maven も gradle も java も使ってないから安心汁
195デフォルトの名無しさん
2023/09/11(月) 17:56:49.57ID:gmM4YyOK >>190
世の中にはビルドとかCI/CDの定義ファイルがYAMLだからって、それ拡張してif else の制御構造組み込んでるところもあるんやで。
世の中にはビルドとかCI/CDの定義ファイルがYAMLだからって、それ拡張してif else の制御構造組み込んでるところもあるんやで。
196デフォルトの名無しさん
2023/09/11(月) 21:37:45.75ID:+I//Qqk+ >>195
antやん
antやん
197デフォルトの名無しさん
2023/09/13(水) 22:09:57.35ID:JQEDxoJN CNCF系はyaml好きだからね
それはさておき、言語固有のリポジトリマネージャはOSとは独立じゃないとディストリビュータもライブラリ管理者も辛いという必要性があって生み出されたもの
今後もなくなる事は無いでしょう。CPANあたりが元祖ですかね
それはさておき、言語固有のリポジトリマネージャはOSとは独立じゃないとディストリビュータもライブラリ管理者も辛いという必要性があって生み出されたもの
今後もなくなる事は無いでしょう。CPANあたりが元祖ですかね
198デフォルトの名無しさん
2023/09/13(水) 23:41:57.05ID:ljzzNVbD tomlがEBCDICで描かれてたら絶望しかない
199デフォルトの名無しさん
2023/09/14(木) 10:03:14.07ID:CfWv79JE さすがにcpanなんかもう使われてないよ
200デフォルトの名無しさん
2023/09/14(木) 10:31:50.25ID:JeXpXyyi tomlとRustって直接関係あるの?
単に採用が多いってだけ?
単に採用が多いってだけ?
201デフォルトの名無しさん
2023/09/14(木) 10:45:04.55ID:hWZaPMNq 明確に関係を規定しているわけではないが
開発ツールチェインで採用している以上は馴染みやすいし、
習慣的に toml が普通という感じ
開発ツールチェインで採用している以上は馴染みやすいし、
習慣的に toml が普通という感じ
202デフォルトの名無しさん
2023/09/14(木) 18:18:10.36ID:uElhXa+m JetBrains から RustRover 出たね。まだプレビュー版だけど。その代わり無料だ。
203デフォルトの名無しさん
2023/09/14(木) 18:20:11.06ID:uElhXa+m ぜひとも IntelliJ IDEA のように無料のcommunity版も出して欲しい。
204デフォルトの名無しさん
2023/09/15(金) 11:42:38.55ID:FLL155po205デフォルトの名無しさん
2023/09/15(金) 12:00:21.56ID:FSCF79pL めちゃペラいな
初めて3日くらいの感想ぽい
初めて3日くらいの感想ぽい
206デフォルトの名無しさん
2023/09/15(金) 12:00:26.41ID:LQyUZKSg しょーもな...
207デフォルトの名無しさん
2023/09/15(金) 12:03:53.15ID:xQfsfFQS しっかりやってる人の意見
https://kerkour.com/should-i-rust-or-should-i-go
Goと比較した場合のRust一番大きいメリットはエラー処理やバグ検知だけどasyncのデメリットが大きいのも確か
https://kerkour.com/should-i-rust-or-should-i-go
Goと比較した場合のRust一番大きいメリットはエラー処理やバグ検知だけどasyncのデメリットが大きいのも確か
208デフォルトの名無しさん
2023/09/15(金) 12:13:34.28ID:LoLA89os むしろNimのネガキャンにしかなってないって話題になってた記憶が
209デフォルトの名無しさん
2023/09/15(金) 12:13:50.38ID:+YuTSIf8210デフォルトの名無しさん
2023/09/15(金) 12:52:21.36ID:FLL155po 情報密度が違っててワロス
https://www.ossnews.jp/compare/Rust/Nim
https://www.ossnews.jp/compare/Rust/Nim
211デフォルトの名無しさん
2023/09/15(金) 12:58:36.85ID:FqVl8L26 >>207
むしろasyncが容易かつ効率的なことがRustの利点だよ
そして軽い非同期タスクを大量にマルチスレッド上でいわゆるM:Nスケジューリングできるのは、
RustとGoしかないためその両者の比較になるのはその通りだが出来る範囲はRustが広くきめ細かい
もちろん非同期以外の言語仕様も同様でGoは貧弱すぎる
むしろasyncが容易かつ効率的なことがRustの利点だよ
そして軽い非同期タスクを大量にマルチスレッド上でいわゆるM:Nスケジューリングできるのは、
RustとGoしかないためその両者の比較になるのはその通りだが出来る範囲はRustが広くきめ細かい
もちろん非同期以外の言語仕様も同様でGoは貧弱すぎる
212デフォルトの名無しさん
2023/09/15(金) 13:33:46.47ID:yoJlOour Go は貧弱だが Go くらいで十分な範囲をカバーできるだろ……という割り切りで設計されているように見える。
213デフォルトの名無しさん
2023/09/15(金) 14:58:25.08ID:3ICKgtSW Goは構文が簡素なのは割り切りとしていいと思うんだけど
参照周りの扱いとかCの頃から進歩してなくて
「こんなこと今どき人間が気をつけて書くの?」という気持ちにはなる
参照周りの扱いとかCの頃から進歩してなくて
「こんなこと今どき人間が気をつけて書くの?」という気持ちにはなる
214デフォルトの名無しさん
2023/09/15(金) 16:57:51.41ID:fC9P09S6215デフォルトの名無しさん
2023/09/15(金) 19:05:24.10ID:BkBNFquN216デフォルトの名無しさん
2023/09/15(金) 19:11:49.50ID:wdMffZ4Q >>215
RustとNimを比較してるサイト
RustとNimを比較してるサイト
217デフォルトの名無しさん
2023/09/15(金) 20:05:41.52ID:pQw5TxEC Goは構文簡素にしてても内部のGCとかは複雑にしてるイメージ。
218デフォルトの名無しさん
2023/09/15(金) 20:39:40.02ID:zdZpv9AJ219デフォルトの名無しさん
2023/09/15(金) 22:34:16.16ID:qrlNPDKn そのRust批判を書いてる人もそうだが
意味のあるプログラミング経験の少ない人はmutを毛嫌いしてるよな
言語に関係なくミュータブルか否かの区別がある方が好ましく
ミュータブルの使用は必要最小限が好ましい
という当たり前のことに沿う仕様なのに理解できなくて批判
意味のあるプログラミング経験の少ない人はmutを毛嫌いしてるよな
言語に関係なくミュータブルか否かの区別がある方が好ましく
ミュータブルの使用は必要最小限が好ましい
という当たり前のことに沿う仕様なのに理解できなくて批判
220デフォルトの名無しさん
2023/09/15(金) 23:11:51.65ID:UUFGnjcv >>219
ミュータブルか否かの区別があるのは煩雑になるだけで好ましくない。WindowsやLinuxのソースコードに
Rustが採用されたと言ってもごく一部でメモリ安全性が特に重視される部分だけ。全部をRustで書くなんて
煩雑な作業には人間はとても耐えられない。
ミュータブルか否かの区別があるのは煩雑になるだけで好ましくない。WindowsやLinuxのソースコードに
Rustが採用されたと言ってもごく一部でメモリ安全性が特に重視される部分だけ。全部をRustで書くなんて
煩雑な作業には人間はとても耐えられない。
221デフォルトの名無しさん
2023/09/15(金) 23:17:03.67ID:/YAD597I >>219
>ミュータブルか否かの区別がある方が好ましく
当たり前では
mojo調べでlet/var区別が好ましいと決着ついた
https://docs.modular.com/mojo/manual/basics/index.html#variables
rust mutが好まれてないだけ
>>220
let/varだと区別がありつつ煩雑じゃない、という事ですね
>ミュータブルか否かの区別がある方が好ましく
当たり前では
mojo調べでlet/var区別が好ましいと決着ついた
https://docs.modular.com/mojo/manual/basics/index.html#variables
rust mutが好まれてないだけ
>>220
let/varだと区別がありつつ煩雑じゃない、という事ですね
222デフォルトの名無しさん
2023/09/15(金) 23:24:01.30ID:/YAD597I223デフォルトの名無しさん
2023/09/15(金) 23:26:04.83ID:6F2DK256224デフォルトの名無しさん
2023/09/15(金) 23:28:27.24ID:/YAD597I あと前スレで出ていたcurlですが
rust TLS backendを使う選択肢があるのに配布用には採用されてませんね
$ curl -V
... libcurl/8.3.0 OpenSSL/3.1.2 (Schannel) zlib/1.3 brotli/1.1.0 zstd/1.5.5 libidn2/2.3.4 libpsl/0.21.2 (+libidn2/2.3.3) libssh2/1.11.0 nghttp2/1.56.0
Release-Date: 2023-09-13
rust TLS backendを使う選択肢があるのに配布用には採用されてませんね
$ curl -V
... libcurl/8.3.0 OpenSSL/3.1.2 (Schannel) zlib/1.3 brotli/1.1.0 zstd/1.5.5 libidn2/2.3.4 libpsl/0.21.2 (+libidn2/2.3.3) libssh2/1.11.0 nghttp2/1.56.0
Release-Date: 2023-09-13
225デフォルトの名無しさん
2023/09/15(金) 23:30:46.42ID:Mq8zEA1a letの後に識別子しか書けないならlet/varでいいんじゃね
パターンが書けるならlet/varよりlet/let mutの方が合理的な気がする
パターンが書けるならlet/varよりlet/let mutの方が合理的な気がする
226デフォルトの名無しさん
2023/09/15(金) 23:31:04.61ID:ksZUfg69 ここはRustのスレ
的外れなRust叩きをしているバカはアンチスレへ移動しろ
的外れなRust叩きをしているバカはアンチスレへ移動しろ
227デフォルトの名無しさん
2023/09/15(金) 23:35:09.11ID:/YAD597I sudo-rsも v0.2.0でstableと言い切って知らないdistributionに
ねじ込んだようですがその後どうなるのか要チェックです
ねじ込んだようですがその後どうなるのか要チェックです
228デフォルトの名無しさん
2023/09/15(金) 23:43:02.23ID:4Db3FasG mojoの所有権周りの構文ってRustより重い感じなんだな
これPython書きたいような人に受け入れられるんだろうか…
これPython書きたいような人に受け入れられるんだろうか…
229デフォルトの名無しさん
2023/09/15(金) 23:44:55.11ID:/YAD597I230デフォルトの名無しさん
2023/09/15(金) 23:47:42.54ID:cnhK/Rr/ >>221
たとえばRustでよくあるこういうパターンはmojoでどうするんだろう
let (tx, mut rx) = channel(100);
そもそも可変参照はどう区別するんだろうね
あと関数の引数変数のmutable性はどうやって表すんだろう
Rustのmutを添える方式が自由度が高くてわかりやすいよね
たとえばRustでよくあるこういうパターンはmojoでどうするんだろう
let (tx, mut rx) = channel(100);
そもそも可変参照はどう区別するんだろうね
あと関数の引数変数のmutable性はどうやって表すんだろう
Rustのmutを添える方式が自由度が高くてわかりやすいよね
231デフォルトの名無しさん
2023/09/15(金) 23:48:06.93ID:/YAD597I >>228
どの辺りが重い感じ?
どの辺りが重い感じ?
232デフォルトの名無しさん
2023/09/15(金) 23:52:51.61ID:4Db3FasG >>231
borrowed, inout, owenedって全部キーワード指定だし結構長くない?
自分はRustみたいに明示的なのが好きだから多少長くてもいいけど
Python好きな人だとどうなんだろうって
borrowed, inout, owenedって全部キーワード指定だし結構長くない?
自分はRustみたいに明示的なのが好きだから多少長くてもいいけど
Python好きな人だとどうなんだろうって
233デフォルトの名無しさん
2023/09/15(金) 23:54:33.01ID:Mq8zEA1a パターンマッチの場合束縛する変数が複数になり得るので、それぞれの変数に対して異なるmutabilityを宣言できる
あと、Rustは変数への束縛にmove/refの区別もあることも関係してるかもね
letやvarのように別構文を用意するなら、それぞれに対してmove版、ref版が必要になってしまう
あと、Rustは変数への束縛にmove/refの区別もあることも関係してるかもね
letやvarのように別構文を用意するなら、それぞれに対してmove版、ref版が必要になってしまう
234デフォルトの名無しさん
2023/09/15(金) 23:59:25.63ID:cnhK/Rr/ let (foo, ref mut bar) = とかよく使うもんね
mutやrefが分離キーワードになっているRustが便利
mutやrefが分離キーワードになっているRustが便利
235デフォルトの名無しさん
2023/09/15(金) 23:59:43.71ID:/YAD597I236デフォルトの名無しさん
2023/09/16(土) 00:02:44.62ID:A/Og/XEu237デフォルトの名無しさん
2023/09/16(土) 00:03:10.36ID:e71CP5Wp >>234
いや、今となってはrefはほとんど使わん
いや、今となってはrefはほとんど使わん
238デフォルトの名無しさん
2023/09/16(土) 00:26:11.63ID:h6vfr2ug TauriとTauri Mobileが別々の実装として統合されないの悪手だと思うんだがな
せっかくRustでロジック書けてネイティブ呼び出しまで簡単で手頃なフロントエンド実装で期待してたのにわざわざコミュニティ分断する必要あるんか?
なんかXamarinみたいな結末迎えそうで残念だわ
せっかくRustでロジック書けてネイティブ呼び出しまで簡単で手頃なフロントエンド実装で期待してたのにわざわざコミュニティ分断する必要あるんか?
なんかXamarinみたいな結末迎えそうで残念だわ
239デフォルトの名無しさん
2023/09/16(土) 09:10:27.83ID:FQ6fYHli240デフォルトの名無しさん
2023/09/16(土) 09:55:59.18ID:ZJLR+eYH >>238
無理に一つにしようとすると条件分岐増えてごちゃごちゃしてわかりにくくなる、というのはありそう。知らんけど。
無理に一つにしようとすると条件分岐増えてごちゃごちゃしてわかりにくくなる、というのはありそう。知らんけど。
241デフォルトの名無しさん
2023/09/16(土) 10:40:22.96ID:FZJflFW6 >>239
もう現金化してアンインスコしてる
もう現金化してアンインスコしてる
242デフォルトの名無しさん
2023/09/16(土) 11:27:20.46ID:8u+hT5wA RustRoverを試してみる
https://zenn.dev/helloyuki/scraps/a0241df49b2556
https://zenn.dev/helloyuki/scraps/a0241df49b2556
243デフォルトの名無しさん
2023/09/16(土) 11:55:36.71ID:jG7brSLe ウェブ系の奴らがやけにJetBrains推してくるけどAndroid Studio使ったら如何にゴミIDEなのかよくわかった
しかも個人使用でも買い切り数百ドルもしたのに今はサブスク月額1300円とかぼったくりもいいところ
VSCodeがあって本当によかったVSもCEならデバッガに制限あるけど無料だしこれほどMSに感謝したことはないね
しかも個人使用でも買い切り数百ドルもしたのに今はサブスク月額1300円とかぼったくりもいいところ
VSCodeがあって本当によかったVSもCEならデバッガに制限あるけど無料だしこれほどMSに感謝したことはないね
244デフォルトの名無しさん
2023/09/16(土) 12:20:19.81ID:E7jGhtqP mut よりもShared XOR Mutableの方が難しいだろ。
245デフォルトの名無しさん
2023/09/16(土) 12:41:23.41ID:8u+hT5wA >>243
Android Studio は IntelliJ IDEA がベースになっていて無料の community 版があるが?
ていうか Android Studio の方は最初から無料じゃなかったか? 金取るやつあるの?
Android Studio は IntelliJ IDEA がベースになっていて無料の community 版があるが?
ていうか Android Studio の方は最初から無料じゃなかったか? 金取るやつあるの?
246デフォルトの名無しさん
2023/09/16(土) 12:57:41.63ID:RATZO/gi247デフォルトの名無しさん
2023/09/16(土) 13:00:07.59ID:XaZSJ/up >>244
lifetimeが難しいというのも大体がshared xor mutableの話だしな
lifetimeが難しいというのも大体がshared xor mutableの話だしな
248デフォルトの名無しさん
2023/09/16(土) 13:07:54.84ID:2emM+tnC >>246
それだとimmutableとなり変数値を書き換えできないから根本から違う
それだとimmutableとなり変数値を書き換えできないから根本から違う
249デフォルトの名無しさん
2023/09/16(土) 13:23:53.43ID:RATZO/gi 描き替え出来るから問題無い
250デフォルトの名無しさん
2023/09/16(土) 13:57:40.01ID:2emM+tnC251デフォルトの名無しさん
2023/09/16(土) 14:05:34.65ID:RATZO/gi うん
だから付ける必要無い所まで描く必要無いよね
だから付ける必要無い所まで描く必要無いよね
252デフォルトの名無しさん
2023/09/16(土) 14:06:34.42ID:XaZSJ/up refとmoveの区別がある言語とそうでない言語の構文比較しても仕方なかろう
253デフォルトの名無しさん
2023/09/16(土) 14:10:34.38ID:nUKpqsu7254デフォルトの名無しさん
2023/09/16(土) 14:24:43.82ID:RATZO/gi >>253
だから付ける必要無い所まで描く必要無いよね
だから付ける必要無い所まで描く必要無いよね
255デフォルトの名無しさん
2023/09/16(土) 14:32:47.40ID:F5t5l7vC >>239
絶対に試すべきだね。
絶対に試すべきだね。
256デフォルトの名無しさん
2023/09/16(土) 14:37:19.47ID:nUKpqsu7 >>254
mutabilityを必要とする分に応じてmutを付ける必覧vがあります
そのため以下4種類がコードに応じて使い分けされています
let mut x: &mut Type = ...
let x: &mut Type = ...
let mut x: &Type = ...
let x: &Type = ...
前者のmutは変数xの値を更新するならば不可欠です
後者のmutはType型の可変参照で参照先の値を更新するならば不可欠です
それぞれの値を更新するためにはそれぞれのmutを欠くことはできません
mutabilityを必要とする分に応じてmutを付ける必覧vがあります
そのため以下4種類がコードに応じて使い分けされています
let mut x: &mut Type = ...
let x: &mut Type = ...
let mut x: &Type = ...
let x: &Type = ...
前者のmutは変数xの値を更新するならば不可欠です
後者のmutはType型の可変参照で参照先の値を更新するならば不可欠です
それぞれの値を更新するためにはそれぞれのmutを欠くことはできません
257デフォルトの名無しさん
2023/09/16(土) 14:43:13.66ID:BFCePFCu ほんまジャップはアホやな
しょーもない重箱の隅をつつきあって知識自慢のマウント合戦
そして出来上がった成果物は誰も使わないクソゴミ
ジャップがオナニーしてる間にソフトウェアは中国に30年遅れているという現実
お前ら見てるとマジで日本人がソフトウェアで土人の未開レベルな理由がよーくわかる
しょーもない重箱の隅をつつきあって知識自慢のマウント合戦
そして出来上がった成果物は誰も使わないクソゴミ
ジャップがオナニーしてる間にソフトウェアは中国に30年遅れているという現実
お前ら見てるとマジで日本人がソフトウェアで土人の未開レベルな理由がよーくわかる
258デフォルトの名無しさん
2023/09/16(土) 17:08:24.37ID:DWW8ClN4 まともなプログラミング言語ならばそれら四つの区別がある
例えばC/C++ではこのように対応する
// 変数値は不変で参照先も不変
Rust: let p1: &i32 = ...
C/C++: const int* const p1 = ...
// 変数値は可変で参照先は不変
Rust: let mut p2: &i32 = ...
C/C++: const int* p2 = ...
// 変数値は不変で参照先は可変
Rust: let p3: &mut i32 = ...
C/C++: int* const p3 = ...
// 変数値は可変で参照先も可変
Rust: let mut p4: &mut i32 =...
C/C++: int* p4 = ...
つまり可変な時にmutを付けるか
不変な時にconstを付けるかの些細な違いにすぎない
例えばC/C++ではこのように対応する
// 変数値は不変で参照先も不変
Rust: let p1: &i32 = ...
C/C++: const int* const p1 = ...
// 変数値は可変で参照先は不変
Rust: let mut p2: &i32 = ...
C/C++: const int* p2 = ...
// 変数値は不変で参照先は可変
Rust: let p3: &mut i32 = ...
C/C++: int* const p3 = ...
// 変数値は可変で参照先も可変
Rust: let mut p4: &mut i32 =...
C/C++: int* p4 = ...
つまり可変な時にmutを付けるか
不変な時にconstを付けるかの些細な違いにすぎない
259デフォルトの名無しさん
2023/09/16(土) 17:14:29.95ID:AP//fjNl 参照の可変性という概念を持つ言語がそもそも少ない
260デフォルトの名無しさん
2023/09/16(土) 17:15:13.87ID:AP//fjNl 概念が異なるのに構文の話だけをしても仕方ない
261デフォルトの名無しさん
2023/09/16(土) 17:34:04.75ID:nlb2ovML 参照先の値がread onlyかwritableかはプログラミングで極めて重要だよね
間違えて意図せず書き換えてしまっていたバグなどの減少にも繋がるから必要な機能じゃないかな
間違えて意図せず書き換えてしまっていたバグなどの減少にも繋がるから必要な機能じゃないかな
262デフォルトの名無しさん
2023/09/16(土) 17:37:07.29ID:sqsrY/cP >>258
2番目と4番目はRustだとsmellyなのでリファクタリング検討候補
2番目と4番目はRustだとsmellyなのでリファクタリング検討候補
263デフォルトの名無しさん
2023/09/16(土) 19:41:48.63ID:OLEDwioO >>204が言ってるのはmutの区別が不要じゃなくて
良く使うmutable側でタイプさせんなってことでしょ
良く使うmutable側でタイプさせんなってことでしょ
264デフォルトの名無しさん
2023/09/16(土) 20:04:56.12ID:DWW8ClN4 ほとんどのプログラムではmutと記述すべきところが少ない
もしmutが多いならレアケースを除いてコードを改善すべき可能性が高い
もしmutが多いならレアケースを除いてコードを改善すべき可能性が高い
265デフォルトの名無しさん
2023/09/16(土) 20:10:22.45ID:TlXhcaWs266デフォルトの名無しさん
2023/09/16(土) 20:12:22.58ID:b0KnMHZf267デフォルトの名無しさん
2023/09/16(土) 20:31:44.89ID:/CtnFWfv268デフォルトの名無しさん
2023/09/16(土) 20:37:59.24ID:EG7NJZsJ 多い少ないの話したいなら定量的な根拠持ってきてくれ
根拠ないなら断言するのはやめて
根拠ないなら断言するのはやめて
269デフォルトの名無しさん
2023/09/16(土) 20:45:23.05ID:DWW8ClN4270デフォルトの名無しさん
2023/09/16(土) 20:50:47.30ID:bcC3Efve どちらがより目立つべきかを考えたら
mutable なほうが目立つべきだし
目立って欲しい方に指定をつける文法が自然だ。
良く使うほうが短く書けるべきという視点だって
もちろん間違いではないし、評価軸は無数にある。
定量化したところでそれぞれの重みをどう捉えるかは
感性の問題だろ。
mutable なほうが目立つべきだし
目立って欲しい方に指定をつける文法が自然だ。
良く使うほうが短く書けるべきという視点だって
もちろん間違いではないし、評価軸は無数にある。
定量化したところでそれぞれの重みをどう捉えるかは
感性の問題だろ。
271デフォルトの名無しさん
2023/09/17(日) 12:16:37.26ID:ju6VviWZ272デフォルトの名無しさん
2023/09/17(日) 13:48:53.24ID:4koi4/xu273デフォルトの名無しさん
2023/09/17(日) 17:36:59.55ID:FEktRC8x 毎日ちょっとずつ課題でてそれを解いていくようなRust勉強サイトってないの?
ナンプレ毎日1問クリアしていく感じなやつ
ナンプレ毎日1問クリアしていく感じなやつ
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【サッカー】U-17日本代表、激闘PK戦制す 北朝鮮撃破で6大会ぶり8強入り U17W杯 [久太郎★]
- 「国民の憤りを引き起こした」中国側“高市首相発言の撤回改めて要求” [どどん★]
- 【インバウンド】中国からの“渡航自粛”…ツアー1000人分の直前キャンセル「キャンセル料は免除してくれ」 ことしいっぱいキャンセルに [1ゲットロボ★]
- 【芸能】日中関係悪化でエンタメ業界に大ダメージ… JO1の中国でのイベント中止、邦画は公開延期、STARTOアイドルへの影響も [冬月記者★]
- XやChatGPTで広範囲の通信障害 投稿や閲覧できず [蚤の市★]
- 【サッカー】日本代表、ボリビアに3発快勝 森保監督通算100試合目を飾る…鎌田、町野、中村がゴール [久太郎★]
- Perfume・あ~ちゃんの結婚相手の一般男性、吉田カバンの社長と判明 [977261419]
- 地球から無限km先の場所ってどうなっているの?
- 自民党議員「高市は先人が築き上げた日中関係を壊した。外務省が謝罪に言ってるが自分で責任を取れ」 [834922174]
- 日本、高市のお陰で破滅に近づくwwwwwwww
- AIアーティストだけど作品公開する
- 岡田克也「軽々しく存立危機事態とか言うべきじゃない」高市早苗「台湾で武力攻撃が発生したらどう考えても日本の存立危機事態」 [931948549]
