Rust part17

■ このスレッドは過去ログ倉庫に格納されています
2022/10/06(木) 22:43:13.96ID:Re0G7B20
公式
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
2022/10/08(土) 22:53:58.00ID:IDy6SwOh
>>80
それは君が勘違いをしている
Cellはマルチスレッドであってもスレッド内で使用することができる
Mutexを使うべき時はマルチスレッドのスレッド間で共有メモリとする時
排他制御のためMutexはコストが重い
したがって両者を互いに代用することは有り得ない
2022/10/09(日) 00:09:47.59ID:RlW+XoWS
よくわかんないんだけどMutex<Cell<T>>は有効なの?
2022/10/09(日) 01:31:18.81ID:LqCUQ5jH
>>83
無効ではない
しかしMutex<T>はlockを取れたら& mut Tも得られて書き込みも可能なのでCellは不要
例えば

fn main() {
 let m = Mutex::new(Vec::new());
 sub(&m);
 let v = m.lock().unwrap();
 assert_eq!(*v, [123, 456]);
}

fn sub(m: &Mutex<Vec<i32>>) {
 let mut v = m.lock().unwrap();
 v.push(123);
 v.push(456);
}

つまりMutexの可変参照をもっていなくても内部の可変性を得られる
ようするにCellで内部可変性を得られるのと同じ
だからMutex<Cell<T>>と二段に重ねる必要はない
2022/10/09(日) 01:46:07.36ID:NMoxe/se
>>84
なるほどー
めちゃくちゃ勉強になる
2022/10/09(日) 01:48:31.99ID:2Hsnp4rW
>>82
ランタイムコストが無視できる場合はMutexが使えるけどCellが使えないシチュエーションはないよね
カジュアル用途なら大は小を兼ねる的な意味でCellよりMutexの方が良いのでは?
Cellにすべき理由あるの?
2022/10/09(日) 01:49:26.64ID:2Hsnp4rW
>>86
一文目逆だった。MutexがCellを置き換えられない場合はないよね、と言いたかった
2022/10/09(日) 01:53:55.32ID:LqCUQ5jH
>>86
話は非常にシンプル
スレッド間でメモリを共有するならばMutex (ただし排他コストがかかる)
共有しないならばCell (コストはかからない)
適切な方を選べばよい
2022/10/09(日) 02:00:16.80ID:NMoxe/se
というかRustマジで良くできてんな
考え尽くされてるわ
2022/10/09(日) 02:01:56.84ID:Z8ziuvVg
要するに変数は全部Cellで囲っておけばいいんでしょ
2022/10/09(日) 02:08:28.77ID:2Hsnp4rW
>>88
スレッド間で共有しなくてもstatic変数だったらCell使えないのでMutexは単純にマルチスレッド用とも言えないのでは
よくわからない人向けにはMutexをまずは勧めるのが良いのでは
2022/10/09(日) 02:24:40.07ID:zCVUy+MP
Qt使おうかと考えているけど
バインディングライブラリのritualを勧めている人がいたけど
最後のコミットが去年でサポーターが心配なんだけど
結局Cのライブラリ読み込みや既存ライブラリの利用とかどれを使えばいいの?
2022/10/09(日) 03:05:30.55ID:LqCUQ5jH
>>91
それは基本的な理解ができていない
static変数はスレッド間で共有が可能なためその型はSync実装を必要とする
だからCellが使えないのは当たり前

スレッド間で共有する必要がないならば
スレッドローカルに持てばSync実装を必要としないためCellを使える
例えば
thread_local! {
 static FOO: Cell<Vec<i32>> = Cell::new(Vec::new());
}
これでスレッド毎に持つことができる
もちろんスレッドを使わないシングルスレッドな状況でも使える
2022/10/09(日) 04:37:34.70ID:8tdOWvz3
Cellって基本的に値がムーブされるから構造体分はmemcpyが起きると思うんだけどそこはどうなの
RefCellやMutexなら直接参照取れるからそっちの方が効率的だよね
2022/10/09(日) 04:57:14.58ID:95mox/4o
複オジの嘘に騙される前には少しは頭使え
2022/10/09(日) 05:51:16.25ID:md7RXs4/
隔離スレに帰れ
2022/10/09(日) 05:51:33.43ID:LqCUQ5jH
>>94
memcpyは起きない
Cellに関係なく一般的にムーブはあくまでもRustの言語レベルにおける概念的なもの
したがって生成コードでは無駄なメモリ間のムーブ(コピー)は起きずに最適化される

Cellの場合でも同様に最適化される
&Cell<T>に対してtake()してTを更新してset()するコードは
& mut Tに対してTを更新するコードと同じ生成コードとなる

例えばそれらの比較コード
https://godbolt.org/z/1TY9v33YP
完全に同じ生成コードとなっていることが分かる
つまりCell<T>はTと比較して実行時ゼロコストである
98デフォルトの名無しさん
垢版 |
2022/10/09(日) 07:01:12.90ID:vVo7+K5Y
RustコンパイラとLLVMは凄いなあ
いつでもそうだけど生成コードではがっちり最適化してくれる
抽象的に書いても安全に書いてもCと同じ速さ
2022/10/09(日) 11:45:38.50ID:kycCKtGO
おまえも隔離スレに帰れ!ちょっと前にLLVMだから凄い坊があそこで暴れてたけど、ここはgccrsとかやる人の場だ、市ね
2022/10/09(日) 13:36:44.30ID:1+WY+ral
gccrsって使えるようになったの?
2022/10/09(日) 20:46:00.69ID:yOxuO3a2
Linux6.1ってRustで組んだってこと?
2022/10/09(日) 22:32:00.35ID:pzhOBcZ9
ドライバ等をRustでも書けるようになるだけ
103デフォルトの名無しさん
垢版 |
2022/10/09(日) 23:29:48.75ID:FY4RBnfH
Pattern alternativesってなんですか?和訳のパターンORもよくわかりません
https://doc.rust-lang.org/book/appendix-02-operators.html
https://doc.rust-jp.rs/book-ja/appendix-02-operators.html
104デフォルトの名無しさん
垢版 |
2022/10/09(日) 23:53:45.87ID:vVo7+K5Y
パターンの代替策
つまり「|」記号が
bit演算のORとしてだけでなく
パターンのORとしても使われるよってこと
105デフォルトの名無しさん
垢版 |
2022/10/10(月) 11:32:20.19ID:wEJNunBW
>>69
なるほど
マルチスレッドで共有する場合にはどうするのが適切なんでしょうか?
106デフォルトの名無しさん
垢版 |
2022/10/10(月) 11:45:42.80ID:wEJNunBW
>>105
これか

https://qiita.com/muumu/items/f264ad781486d3dd037b
107デフォルトの名無しさん
垢版 |
2022/10/10(月) 18:49:06.89ID:lNBbmc/N
Linux Kernel6.1は、Rustへ移行した最初のバージョンとなります。
Rustへ移行することにより、C言語バージョンの世代から、およそ30%の高速化を果たしました。
2022/10/10(月) 22:52:16.26ID:3WEeN/aN
気分はCelltic!
「実はshared xor mutableってしっくりこないんです!」
109デフォルトの名無しさん
垢版 |
2022/10/10(月) 23:11:02.61ID:U+uG6kFy
>>105
内部可変性を得たい場合
スレッド内ではCell<T>もしくは参照を持ち出したいならRefCell<T>を使う
スレッド内部で普通の共有ならばそれらの&を使う (&mutでなくてもOK)
スレッド内部で所有者が別となる共有ならばそれらのRc<...>を使う

スレッド間では完全排他のMutex<T>もしくはreaders複数可のRwLock<T>を使う
(ただしTがi32やboolならばもっと軽いAtomicI32やAtomicBoolが使える)
スレッド間で共有は所有者が別となるのでそれらのArc<...>を使う
2022/10/11(火) 18:04:30.49ID:BiNGLwWh
>>97
最適化頑張ってるだけでムーブは概念的なものじゃないぞ。RBMMなんだから。
2022/10/11(火) 19:16:08.16ID:Bl5ahscm
moveがmemcpy呼び出しになるかどうかはあくまでも実装の話で
move自体のセマンティクスはデータのコピーを要求しないということが言いたいのでは

最適化offにして構造体サイズ大きくするとmemcpy呼び出されるから、memcpy起きないというのは嘘だけど
2022/10/11(火) 19:23:40.64ID:61VrJvDY
>>110
あくまでもRustの言語レベルでの抽象的なレベルではムーブはムーブであってビットコピーの保証はそこには一切ない
そして我々は抽象的な概念に基づいてプログラミングすればよい
生成コードはムーブという抽象的な概念だけを保証して最適化される
だからこそ生成コードではムーブでビットコピーが消え得る
2022/10/11(火) 19:29:43.10ID:61VrJvDY
>>111
memcpyはたまたまムーブの最適化なしのデフォルト状態で行われる可能性のあるコードにすぎないね
Rustの言語としてはmemcpyが必ず行われることなんて全く保証しない
ムーブはもっと上位の概念であってRustが保証するのはその上位の概念のみだね
2022/10/11(火) 19:51:08.13ID:Bl5ahscm
>>113
はいはい、>>111は誤読されかねない表現でしたね
(常に)memcpy起きないというのは嘘
と読み替えておいてください

元々の>>94のRefCellやMutexの方が効率的かという質問については、そういう場合もある、というのが答えで良いですよね

生成されるコードがどうなるかは最適化レベルや周囲のコードに依存するわけで、必ずどちらかが効率が高いと言えるようなものではない
感覚的には格納するデータサイズが大きい方がRefCell/Mutexが有利に、小さければCellが有利になりそうだけど、
ちゃんと測定したわけではないので実際のところは分からない
2022/10/11(火) 20:23:10.29ID:iRs2n6UT
>>114
実はRefCell構造体のメンバーにCellが使われている(現状)

使用されるメモリサイズ
Cell<T> ← Tと同じサイズ
RefCell<T> ← Tのサイズに加えてborrow管理のために内部で使用するCellサイズ分加算

動作コスト
Cell<T> ← (利用後すぐset()すれば)Tと同じコスト
RefCell<T> ← Tのコストに加えてborrow管理のために内部で使用するCellの読み書き操作コスト分加算
2022/10/11(火) 21:44:42.19ID:P/g9+OyI
ホント笑っちゃうくらい嘘を散りばめてくるよねw
117デフォルトの名無しさん
垢版 |
2022/10/11(火) 21:58:52.19ID:lchMb24F
>>114
RefCellやMutexの方が効率的かという質問については
代用として使うならばそれらの方が遅いでしょう
RefCellはボローチェック処理が必ず入ります
Mutexは排他的ロック処理が入るのでさらに遅いです
2022/10/11(火) 22:06:38.86ID:Bl5ahscm
>>115
動作コストはT全体を置き換える場合だよね
TがVecで、一要素追加する場合のコストも計算してみてよ

>>117
ボローチェック処理が最適化で消えないことは保証されてるの?
ボローチェックや排他処理のコストはCellで発生するデータコピーより必ず高コストになるの?
2022/10/12(水) 14:10:22.75ID:IRDyECLz
ムーブ元の変数が使われないことがわかってるんだから
その変数の領域を使い回せばよいだけでしょ?
普通に考えてコピーとか起きないと思うんだが
2022/10/12(水) 18:26:20.15ID:R7/twQcO
自称分かってる人同士のケンカ
2022/10/12(水) 21:47:16.08ID:TdLmkMrU
RefCell使うのはアロケーションを避けたいからでしょ
2022/10/12(水) 23:29:45.96ID:MmGzrhE7
Cell<T>もTもメモリ領域は同じサイズで性質が異なるだけなのね

Cell<T>の更新はこうなるから
(1) メモリ→value読み出し // take()その1
(2) メモリ←default-value書き込み // take()その2
(3) valueを更新してnew-value
(4) メモリ←new-value書き込み // set()
コンパイラがまともなら(2)の部分はムダと判断して無くせそうね

さらにvalueの更新内容によっては (例えば足し算など算術の場合など)
その後にLLVMが最適化でメモリに対して直接実行する命令コードにするだろうから読み出し書き込みも消えるわけね
2022/10/13(木) 01:04:10.25ID:v9vBAx/l
CopyじゃないStringやVecで&mut selfとるメソッドを試せば違いが分かるよ
2022/10/13(木) 02:00:58.56ID:m/K7Pbd2
Copyを実装しない適当な構造体
#[derive(Default)]
struct Foo {
 inner: i32,
}
の &Cell<Foo> と &mut i32 の両方のケースで
>>122の最適化により同じ生成コードとなるから
Copyを実装してるか否かは関係ないみたい
2022/10/13(木) 03:36:21.71ID:Oo+uXzBV
>>124
それだと簡単にインライン化出来るからね
アロケーションが必要な型という意味でCopyじゃないStringやVecと言ったんだけど
Dropと言ったほうがよかったのかな
2022/10/13(木) 04:02:18.88ID:cMF4wuqy
アロケーション発生しなくても(i32, i32)とかにするだけでもう生成アセンブリ同じじゃなくなるね
2022/10/13(木) 08:01:16.32ID:wSzwAK9q
コンパイラが>>122
(2) メモリ←default-value書き込み
を削除する最適化をすれば
Copy実装なかろうがヒープを使おうが
生成コードは同じになるんじゃね?
2022/10/13(木) 15:12:31.34ID:FWxI+s/s
>>126
Copyにしてget/setにすれば同じになるかも
2022/10/13(木) 15:31:24.77ID:WZ96xtHr
macOSにおけるFirefoxのパフォーマンスを劇的に改善した方法とは?
メモリアロケーター「jemalloc」を独自にカスタマイズしたアロケーターを用いてメモリ管理を行っています。Firefoxのアロケーターでは並列処理時のロックを効率的に行うためにOSごとにネイティブなAPIを使用しているとのこと。このロックAPIとして、macOSではOSSpinLockが用いられていました。
https://gigazine.net/news/20221011-firefox-macos/

これって、Rustのメモリアロケーターがjemallocを基にしたRust実装になってるってことだよね?大昔はjemallocだったという話で
2022/10/13(木) 16:10:29.83ID:PFF+OL8h
>>129
現在の Rust はデフォルトではシステム標準のアロケータを使うはず。
一時期は Jemalloc (のバインディング) を使っていたけどだいぶん前にやめてる。
やりたければアロケータの差し替えは簡単に出来るので
大きなプロジェクトだと (必要な性質にあわせて) 専用のアロケータを持っていることはあるかも。
2022/10/13(木) 16:44:36.94ID:7pqOU2dm
>>129
この記事はrustまったく関係ないよ
Firefoxはすべてがrustで書かれているわけではない
2022/10/13(木) 17:51:45.20ID:Fb+ro4ZF
>>129
Rustでは1.32.0(2019/01/17)から jemalloc がデフォルトでなくなりましたが、理由はjemallocのほうがマルチスレッドでは
微妙に低負荷で速いですが、コンパイルバイナリで300kB追加されるのとjemalloc自体のバグなどで問題が出ていたから。

Firefoxは恐らく、Cargo.tomlでアロケターをjemalloc系(多分tikv-jemallocator)に変えていて速度を稼いでるのでは?
(完全に想像だけど・・・)

Rust で jemalloc を使ったら並列処理が速くなった
https://zenn.dev/hankei6km/articles/using-jemalloc-in-rust-speeds-up-parallelism
2022/10/13(木) 20:45:15.45ID:7pqOU2dm
>>132
C++とのinteropあるからrust側はC++のallocator呼び出しているだけで
独自に(オリジナルの)jemallocをリンクすることはしてないと思うよ
2022/10/13(木) 23:11:21.07ID:Fb+ro4ZF
>>133
元記事見ると、jemallocそのものを一部、リプレースして書き換えてるみたいね。firefoxのレタリングエンジン自体はservoで
tikv-jemallocatorを使ってるみたいだけど、リンクしてるのはその通りオリジナルではなく書き換えたjemallocになってるみたい
https://github.com/servo/servo/blob/master/components/allocator/Cargo.toml
https://searchfox.org/mozilla-central/source/memory/replace/logalloc/README
2022/10/13(木) 23:14:01.26ID:Fb+ro4ZF
いや動的リンクはしてないのかな?jemallocソースをリプレースして実行ファイルに組み込んでる
2022/10/13(木) 23:25:53.83ID:cMF4wuqy
Firefoxはservo使ってない定期
2022/10/14(金) 01:05:31.38ID:2gl6G2n+
>>127
コンパイラはそんなに賢くないってことじゃね?
2022/10/14(金) 10:36:15.19ID:P+TQoSXr
複オジの嘘をまともに相手してたらキリが無いよ
2022/10/14(金) 11:07:41.50ID:t+3JDnfr
おじさんなんで最近こっちにいるの?
隔離スレが機能しなくなったのとリンクしてるのが面白い
2022/10/14(金) 21:09:01.17ID:iCatm8xv
>>136
シッタカも出来ないかまってちゃん不定期
https://searchfox.org/mozilla-central/search?q=servo%2F&path=&case=false®exp=false
2022/10/15(土) 00:38:51.20ID:ZRY2KlKK
>>140
servoを構成するコンポーネントのうちfirefoxに取り込まれたstyloしか登場してないように見えるが
2022/10/15(土) 10:12:30.40ID:kho15VFl
複オジにマジレスしても意味ないよ
2022/10/15(土) 21:19:13.19ID:Sue68NiD
お前の主張は「Firefoxはservo使ってない」であって「styloしか登場してない」では無い、そもそもstyloだけじゃない
途方もなく低い技術力でマウント取りたいことが生きがいの薄汚いオッサン
2022/10/16(日) 01:52:37.08ID:xR2EqnpB
servoは独立したレンダリングエンジンだからservoを使うと言えるのはgeckoを丸々置き換えた場合では
というかallocatorの話はどうなったんだ
2022/10/16(日) 13:06:47.08ID:I4ihc4bO
「Firefoxはservo使ってない」定期、顔真っ赤の話しそらしオジサン、geckoを丸々置き換えた場合とか言い出したw
「styloしか登場してない」も消えたwww
あんたはアロケーターなんて興味ないだろwww
したけりゃしろ。自分からは詳しい技術的な話何もできない、マウントしたいだけ、業界にいる寄生虫
2022/10/16(日) 16:22:20.12ID:xR2EqnpB
>>134
firefoxのレンダリングエンジンはservoじゃなくてgeckoのままだよ
servoは次世代ブラウザ向けのレンダリングエンジンの実装を模索するための実験プロジェクトで、geckoを置き換えることを意図したものではないよ
servoの一部のコンポーネントは完成度が高くgeckoに取り込まれてはいたので、
servoが発展していったらgecko全体がservoで置き換えられる未来もありえたけど、
mozillaがservoの開発者レイオフしちゃったのでその可能性もなくなっちゃったかと

動的ライブラリや静的ライブラリとして他のアプリケーションにリンクするcrateの場合、リンク先のアプリケーションバイナリに含まれる(または、動的リンクされる)allocatorを利用するのが普通なので、
geckoのservo由来のrustコードもそうなっていて独自にallocatorを定義することはしていないんじゃないかな
2022/10/16(日) 18:59:51.30ID:qTG+zV4j
rust関係ないけどjemallocを日本語で読む時
ジェ-マロック派?それともジェム-アロック派?
2022/10/16(日) 20:24:24.45ID:xR2EqnpB
Json Evans mallocだからジェーイーマロックって呼んでる
2022/10/16(日) 22:45:33.29ID:SvF0Fhwf
それを言うなら malloc が (たぶん) memory allocate の略なんだから
ジェーイーエムアロックと呼ぶのが筋というものでは……。

俺はそもそも口頭で読み上げる機会がないから考えたこともなかった。
2022/10/16(日) 23:11:22.79ID:sz/XVYMu
開発者本人の動画見るとジェイ・マロックに聞こえるが
ジェイ・イー・マロックが短くなってるだけかなこれ
https://youtu.be/RcWp5vwGlYU?t=79
2022/10/17(月) 18:50:40.32ID:q3uOCHzu
>>146
servoじゃなくてgeckoのままは言い過ぎです、現にベクター系の2Dや、Canvasなどに使用するレンダラーはservo由来の
レンダラーが使用されます。その他はその通りでしょう
2022/10/17(月) 19:52:15.71ID:gBqRn20s
>>151
geckoを構成するコンポーネントの入れ替わりはあったけど
firefoxのレンダリングエンジンは生まれたときからずっとgeckoだよ
逆にgeckoじゃなかったら何なんだ
2022/10/17(月) 19:58:16.39ID:gBqRn20s
>>151
FirefoxにRustのコンポーネントを多く導入したQuantumプロジェクトの説明でも、ServoのコンポーネントをGeckoに取り込むと言っていて、
Geckoを置き換えるとは言っていない
https://wiki.mozilla.org/Quantum
2022/10/17(月) 21:29:09.32ID:MqsTBCMt
Rust関係ないからFirefoxスレでどうぞ
2022/10/17(月) 22:43:40.85ID:GuOtjDmV
もうその話題はいいよ
しつこいな
156デフォルトの名無しさん
垢版 |
2022/10/18(火) 10:08:56.84ID:1nhFYrk9
しつこくやって『Cell<T>はTと同じコスト』(真っ赤な嘘)を流したかったんでしょw
2022/10/18(火) 11:26:14.64ID:f2tKHPpy
termuxのrustずっとバージョン不整合で動かないな
rustupじゃそもそもインストール出来ない
158デフォルトの名無しさん
垢版 |
2022/10/18(火) 12:14:53.29ID:PMaXG0c3
>>157 俺は普通に動いてる
一応聞きたいんだけど、TermuxはF-Droidから入れたよね?
Play Store版はもうメンテナンスされてないから色々バグると思う
2022/10/18(火) 12:23:43.08ID:lAl7R2Of
>>153
あー、それ見てワカッタ風吹かしてんのな。「Rustのコンポーネントを多く導入」と言ってる時点で、styloだけじゃないし
2DレタリングのwebrenderもservoからのRust製だわ。”誰も”Geckoを置き換える=Geckoが無いなんて言ってない
https://github.com/servo/webrender
2022/10/18(火) 14:03:11.76ID:f2tKHPpy
>>158
F-Droidから入れてる
何故かlibllvm-14.soのリンクが出来ないと怒られてしまう
で入ってるllvmのバージョンが更新で15に上がってしまってる状態
俺環かも知れんね
161デフォルトの名無しさん
垢版 |
2022/10/18(火) 14:27:25.95ID:jB7ekv9R
あんまり自信がある訳じゃないんだけど、カーネルが64bitでユーザーランドが32bitみたいな環境だったりしない?
2022/10/18(火) 14:27:28.03ID:SAVTW7Pl
>>159
Geckoのコンポーネントを置き換える

Geckoを置き換える
は全然意味が違うでしょ

まあ日本語の問題で意図してるところは食い違ってないから反応するのはこれで終わりにするわ
2022/10/18(火) 14:32:25.86ID:JxWDHfdB
グーグル、Rustで書かれたセキュアなOS「KataOS」を発表
https://japan.zdnet.com/article/35194751/
2022/10/18(火) 15:37:54.47ID:f2tKHPpy
>>158,161
すまぬ色々やってる中で入れたnightlyの影響だった
お騒がせした
2022/10/19(水) 03:30:17.24ID:cvhlJCwu
fucsia「僕はいらない子なの?」
2022/10/19(水) 07:05:26.07ID:CJepXKVA
>>163
昔「おおっ!!!あのグーグルがまた何か新しいことを始めたぞ!すごそうだ!」
今「まぁーーたはじまったよ・・・」
2022/10/19(水) 11:11:44.42ID:H7L8/zfi
Googleが立ち上げては潰してきたサービス一覧「Killed by Google」
killedbygoogle.com
2022/10/19(水) 11:23:33.38ID:iHEkpSLR
何も産まないよりは健全よね
2022/10/19(水) 11:35:06.09ID:Dqx/r4FW
役に立つかどうかわからんものに手を出せる余裕が
個別の結果に関わらず
部分的な成果の積み上げで会社をブーストさせるんよ
2022/10/19(水) 11:38:58.17ID:Sj+PYk/j
まあ堅そうな名前ではあるな
2022/10/19(水) 12:24:59.02ID:j2B3ovC/
IoT向けOSって言ってるし組み込みOSなんて元々百花繚乱だろ。
組み込み機器の脆弱性対応なんて大変だし、そもそもその手の脆弱性が入り込みにくい言語を採用するのは合理的だと思う。
2022/10/19(水) 12:46:33.84ID:xwPbcXKV
日本ってやらない理由、出来ない理由並べる奴が多いよな
多くの日本企業よりGoogleの方が多く生み出しているし世の役に立っている
2022/10/19(水) 12:48:40.76ID:aUvB23KT
南朝鮮ってやらない理由、出来ない理由並べる奴が多いよな 多くの南朝鮮企業よりGoogleの方が多く生み出しているし世の役に立っている
2022/10/19(水) 13:00:38.45ID:xwPbcXKV
Rust Foundationへの参加はNECやFUJITSUよりSamsungの方が早いんじゃないかなぁ
国内大手で積極的にRustを推していこうなんて所はなさそうに見えるし
組み込みのRenesasとかもやる気なさそうだしな
2022/10/19(水) 19:58:52.34ID:+MAum9P/
出来ない理由を考えるのではなく!
176デフォルトの名無しさん
垢版 |
2022/10/19(水) 21:32:43.94ID:mHa4T+cl
日本が後進国になってきたのは政治の責任が大きいけど
IT分野で遅れてるのは総じて教育水準が低いからだよ
2022/10/19(水) 22:51:58.05ID:owfoFln4
民主主義国は政治の責任=有権者の責任
178デフォルトの名無しさん
垢版 |
2022/10/19(水) 23:03:48.16ID:kLmY2FYt
>>177
利権差配と中抜きしか考えない国賊を礼讃して
統一創価売国与党に投票し続けたやつの責任だろ
2022/10/20(木) 00:02:58.60ID:ce/AQgdF
まったく読むに値しないクソ書き込みの羅列の中で
>>170 だけが唯一価値ある輝きをはなっている
2022/10/20(木) 13:00:10.90ID:Px+TgmX7
在日だらけ。IT分野で遅れてるのは米国(英語圏)・中国の人口差だし、日本の人口減でもある。
世界中で、歴史上、移民以外で人口減を解決した国は1つもない
そういう意味では韓国などはでは優れたソフトウエアは1つもない。馬鹿な半島はAndoridのOSを
握ろうとTizenなどというゴミを掲げたが、食いついたのはNTTドコモぐらい
いま韓国で起こってるのはソフトウエアサービスの””ガラパゴス化””であり、GoogleやAmazon
Apple Payなどに対して参入障壁を作り防御するような、大昔の古臭い日本あった不公正貿易。
民主党政権時代だって3年あったわけだが、利権と中抜きしかしてない。やったことは仕分けだが
1つも役に立たないどころか、地方医療を崩壊させ、気象変動へ対処できるインフラ投資を
一時的止めた害悪しかなかった。その他にも野田政権による執拗な消費税増税もあった。
今彼らは英国が減税を匂わせただけで大混乱していることを見ずに、消費税ゼロを掲げている。

卑劣にも矛先を反らし、リベラルなのに移民反対派で、リベラルなのに「国賊、売国」などという言葉を使い、
まるで戦争前夜か、共産主義や社会主義のような物言いをするアホが出る時点で若い人の人材不足といえる。
2022/10/20(木) 16:07:13.38ID:zGrDbuOl
英国が減税しただけで、支持率が7% になったw
米国の金利上昇で、韓国の金利も0.5% 上がったw

なのに、借金が1千兆円もある日本の金利が、0%w

狂った世界中の経済学者達が、日本は不正をしている。
日本国債は破綻しなければおかしいと言ってるw

外人が幾ら日本国債を売っても、金利が上がらない。
破綻しないw

いい加減、借金が1千兆円もあるという財務省の嘘に気付け!w

YouTube で勉強しろ。
【TVじゃ絶対言えない話】国の借金は嘘!?中田敦彦が解説
2022/10/21(金) 19:45:15.15ID:xXJwtueL
WEB+DB PRESS、何度目のRust入門なんだい?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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