公式
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 part33
https://mevius.5ch.net/test/read.cgi/tech/1755247770/
ワッチョイスレ
プログラミング言語 Rust 4【ワッチョイ】
https://mevius.5ch.net/test/read.cgi/tech/1514107621/
Rust part34
レス数が1000を超えています。これ以上書き込みはできません。
1デフォルトの名無しさん
2025/11/27(木) 12:25:23.76ID:4JaxkBD42025/11/27(木) 12:31:32.50ID:2EmBR7sq
>>1
O2
O2
2025/11/28(金) 19:07:57.45ID:8IKERdAK
go
2025/11/28(金) 20:37:38.66ID:iU7IRGDo
Rustスレって急に書き込みが増えて急に書き込みがパタっとなくなるよね
不思議
不思議
2025/11/28(金) 21:46:28.15ID:RsuyY5k/
話題がない状態がデフォルト。
誰かが話題を提供したときにそれに乗っかって投稿し始めるからバースト的に書き込みが増えるという普通の話なので Rust スレに限らずだいたい掲示板というのはそういうもの。
誰かが話題を提供したときにそれに乗っかって投稿し始めるからバースト的に書き込みが増えるという普通の話なので Rust スレに限らずだいたい掲示板というのはそういうもの。
2025/11/28(金) 22:38:13.42ID:lHHHw6+p
Cloudflareの大規模障害は言語としてのアイデンティティに関わるせいか、にわかに勢いづいてたんでは
7デフォルトの名無しさん
2025/11/28(金) 22:55:51.07ID:UW3PgF6D 安全性に関しては、結局前スレ888の
Rustが保証するのはメモリ安全であって、それ以上の機能を言語自体に期待してはいけないね
という話なんだろうね。
リーナスの「ランタイムエラーでパニックを発生させるのは根本的に問題があると思っている」というのはカーネルだけの話じゃなくてもっと根深い話なんだろうね。
Rustが保証するのはメモリ安全であって、それ以上の機能を言語自体に期待してはいけないね
という話なんだろうね。
リーナスの「ランタイムエラーでパニックを発生させるのは根本的に問題があると思っている」というのはカーネルだけの話じゃなくてもっと根深い話なんだろうね。
2025/11/28(金) 23:03:34.36ID:5iCuzt+H
>>6
Rustが望ましいという結論が出たことが大きいね
必ずResultまたはOptionが返り値となるため適切な対応がとれる
一方で得られた教訓として異常時にpanicで終了させるべき通常のプログラムと異常時でも動作を続けるべきプログラムの2種類のどちらであるかを正しく認識して設計と実装をすべきと再認識させられた
Rustが望ましいという結論が出たことが大きいね
必ずResultまたはOptionが返り値となるため適切な対応がとれる
一方で得られた教訓として異常時にpanicで終了させるべき通常のプログラムと異常時でも動作を続けるべきプログラムの2種類のどちらであるかを正しく認識して設計と実装をすべきと再認識させられた
2025/11/28(金) 23:21:49.55ID:zTtFbltF
>>7
Cloudflareの件で論点となったRustの安全性というのはメモリ安全のことではなくて、「未定義動作をしない」という、もう一段広い意味での安全性だよ
panicでシステムが停止したことによって死人が出たとしても、panic自体は定義された動作だからRustの定義上は「安全」なの
Cloudflareの件で論点となったRustの安全性というのはメモリ安全のことではなくて、「未定義動作をしない」という、もう一段広い意味での安全性だよ
panicでシステムが停止したことによって死人が出たとしても、panic自体は定義された動作だからRustの定義上は「安全」なの
2025/11/28(金) 23:32:25.81ID:oAHABZMO
Linux対応でRustはpanicさせないAPIが整備されたから今後は明るい展望に変わった
2025/11/28(金) 23:36:59.19ID:LIzNpAhu
そういや、リーナスに言われて追加した、いろんなとこにメモリアロケータを引数で指定できる仕様はもう安定化したの?
2025/11/28(金) 23:58:42.55ID:Gsu5/GcB
入院はもう少しかかる
2025/11/29(土) 05:51:25.68ID:SOcARO8b
入院ってなんだ?
2025/11/29(土) 06:26:16.92ID:FJ34gj6n
心の病だろ
2025/11/29(土) 10:19:09.75ID:1AGRfuCc
本当に「もう少し」かあ?
2025/11/29(土) 11:14:14.65ID:cYk3tSL4
正規表現が標準ライブラリに入らないのはどういう理由なん?
Rust開発チームが管理しているものだし、公式に近いものに思えるけど
LazyCell とかは標準入りしたし、これも標準に入れて欲しい感じがある
Rust開発チームが管理しているものだし、公式に近いものに思えるけど
LazyCell とかは標準入りしたし、これも標準に入れて欲しい感じがある
17デフォルトの名無しさん
2025/11/29(土) 11:17:50.21ID:m7OsZTNV 1ヶ月ほど前にRust入れたときにVS2022が一緒にインストールされたんだが
VSだけ2026にしたらRustは影響受ける?
むしろRustでもVS2026使った方が良い?
VS2022消してからVS2026入れた方が良い?
VSだけ2026にしたらRustは影響受ける?
むしろRustでもVS2026使った方が良い?
VS2022消してからVS2026入れた方が良い?
2025/11/29(土) 11:32:23.68ID:Pddo/nnB
>Rustが望ましいという結論が出たことが大きいね
Rustのスキルは低いままなのに詐欺師のスキルには磨きがかかってるな
Rustのスキルは低いままなのに詐欺師のスキルには磨きがかかってるな
2025/11/29(土) 11:54:47.58ID:yWF17bd5
>>17
消してVSCode入れるといいよ
消してVSCode入れるといいよ
2025/11/29(土) 12:14:00.02ID:a750ewmK
>>19
いきなり正解、しかもこの質問色んなスレに一週間前から貼られてる謎の質問
いきなり正解、しかもこの質問色んなスレに一週間前から貼られてる謎の質問
2025/11/29(土) 12:23:47.25ID:T0m5YnVK
何の役にも立たないクソレスとそれを無意味に持ち上げるドクソレスw
2025/11/29(土) 12:41:28.20ID:cYk3tSL4
Windows環境だとMSVC使うのが基本だし、Visual Studio 入れるのが真っ当じゃないの?
エディタは VS Code でいいけど、Rustが依存するツールとして Visual Studio のコンパイラやリンカは要る
VS 2026 にしても問題ないけど、Rustから C/C++のコードを呼ぶ可能性があるなら VS 2022 は残した方が良い
(cmakeクレートがまだVS2022までしか対応してないので)
エディタは VS Code でいいけど、Rustが依存するツールとして Visual Studio のコンパイラやリンカは要る
VS 2026 にしても問題ないけど、Rustから C/C++のコードを呼ぶ可能性があるなら VS 2022 は残した方が良い
(cmakeクレートがまだVS2022までしか対応してないので)
2025/11/29(土) 12:50:13.56ID:bZRv4lrN
2025/11/29(土) 12:51:50.05ID:bZRv4lrN
>>22
MSVCターゲット向けに必須なのはリンカとWindows SDKの一部だけでコンパイラは必須じゃなくない?
MSVCターゲット向けに必須なのはリンカとWindows SDKの一部だけでコンパイラは必須じゃなくない?
2025/11/29(土) 13:11:10.98ID:yr60lsGC
WindowsでもMSVCツールチェインより、イメージ的には鈍重そうなMinGWのほうが
実は作られるバイナリの動作速度早いんだっけ?
実は作られるバイナリの動作速度早いんだっけ?
26デフォルトの名無しさん
2025/11/29(土) 13:35:43.84ID:xVYnmHWx visual studioてまだ使ってる人おるんかな
c++てmsべったりなのがやっぱキモい
c++てmsべったりなのがやっぱキモい
2025/11/29(土) 13:45:33.72ID:3id1C+OK
Rustも似たようなもんだろ
今やMSが一番Rustに金突っ込んでるんじゃないか?
今やMSが一番Rustに金突っ込んでるんじゃないか?
2025/11/29(土) 14:01:56.76ID:S0nqOoRi
C++大好きなビッグテックといえばちょっと前まではMSだったけど、
今ではMSがRustに浮気してGoogleが筆頭になっちゃったね
今ではMSがRustに浮気してGoogleが筆頭になっちゃったね
2025/11/29(土) 14:40:05.38ID:SOcARO8b
allocator_api #32838
のissue見たら、アホみたいに長くて笑った
何をそんなにもめてるのか理解できない
のissue見たら、アホみたいに長くて笑った
何をそんなにもめてるのか理解できない
30デフォルトの名無しさん
2025/11/29(土) 15:42:22.34ID:hbxZmChk 初心者:C/C++完全に理解した
中級者:C++チョットワカル
上級者:C++嫌い/Cの方が良い
長老:Rust嫌い
中級者:C++チョットワカル
上級者:C++嫌い/Cの方が良い
長老:Rust嫌い
2025/11/29(土) 17:21:50.23ID:FtFLAJH1
MSがRust++を出したら本気出す
2025/11/29(土) 17:30:06.89ID:SOcARO8b
大手でRustを使い始めてないのはAppleぐらいじゃないか?
2025/11/29(土) 17:31:15.18ID:mIVdsrxN
そこはRust#だろ
2025/11/29(土) 17:52:51.69ID:aMf8U9NJ
>>32
AppleもRust使ってるよ
AppleもRust使ってるよ
2025/11/29(土) 18:05:29.91ID:SOcARO8b
そこはSwiftだろ
Swiftファンに対する裏切り行為だよ
Swiftファンに対する裏切り行為だよ
2025/11/29(土) 18:38:46.56ID:a5a+Znie
706 デフォルトの名無しさん sage 2025/11/17(月) 09:11:50.77 ID:rk5/i4ud
Rustの求人はここが毎月レポート出してるけど会社名とか見ると結構面白い
https://filtra.io/rust/jobs-report/oct-25
今月は防衛産業のAndurilが求人数トップだね
707 デフォルトの名無しさん 2025/11/17(月) 12:12:35.65 ID:AtT4RnQG
そのRust求人出してる企業一覧すごいな
知ってる企業がずらりと並んでいて感動した
Amazon
Microsoft
Cloudflare
xAI
Apple
Dropbox
Nvidia
Google
SpaceX
GitHub
Mozilla
Woven By Toyota
Discord
Disney
Fastly
Mercedes
Bloomberg
Toyota Connected
Figma
Astral
KSAT
LINE
Akamai
Meta
Rustの求人はここが毎月レポート出してるけど会社名とか見ると結構面白い
https://filtra.io/rust/jobs-report/oct-25
今月は防衛産業のAndurilが求人数トップだね
707 デフォルトの名無しさん 2025/11/17(月) 12:12:35.65 ID:AtT4RnQG
そのRust求人出してる企業一覧すごいな
知ってる企業がずらりと並んでいて感動した
Amazon
Microsoft
Cloudflare
xAI
Apple
Dropbox
Nvidia
SpaceX
GitHub
Mozilla
Woven By Toyota
Discord
Disney
Fastly
Mercedes
Bloomberg
Toyota Connected
Figma
Astral
KSAT
LINE
Akamai
Meta
2025/11/29(土) 18:43:49.42ID:SOcARO8b
Adaの後継はRustでウッドボールか
2025/12/01(月) 10:32:10.44ID:g1Gr1S7x
1画面プログラムとか書いてそう
39デフォルトの名無しさん
2025/12/02(火) 18:29:04.48ID:cTmHVcrQ ビルド遅いのなんとかならんのかな
差分だけでええやろって思ところを毎回フルコンパイルしてるように見えるんだけど
差分だけでええやろって思ところを毎回フルコンパイルしてるように見えるんだけど
2025/12/02(火) 18:43:32.01ID:O0y+ZlUf
分割方法と変更箇所の関係だろうな
41デフォルトの名無しさん
2025/12/02(火) 19:41:15.00ID:1FGONYAG sccache入れれば多少は
2025/12/02(火) 20:44:48.17ID:cRRKqG9w
43デフォルトの名無しさん
2025/12/03(水) 03:34:36.66ID:oIB/w2I6 コンパイルの効率は悪いよ
2025/12/03(水) 03:35:44.18ID:oIB/w2I6
そりゃsccacheの制限じゃなくてRustの制限だからさ
2025/12/03(水) 06:04:17.00ID:WiHtSPxG
言語に関係ない性質
2025/12/03(水) 06:10:38.86ID:IXiFazox
ビルド眺めてたら、最後のリンクするところがクソ遅いな
2025/12/03(水) 11:42:16.90ID:G3Cx7y7o
Rustのcratesって
.a/.soや.lib/.dllをダウンロードする仕組みじゃなくて
毎回ソースが必要なん?
.a/.soや.lib/.dllをダウンロードする仕組みじゃなくて
毎回ソースが必要なん?
2025/12/03(水) 12:06:05.34ID:kmYeuBOH
基本的には毎回ソース
2025/12/03(水) 13:05:32.27ID:OnxLfrF+
コンパイル済みバイナリをダウンロードできるようにする提案は出ているんだけど実現するかどうかはわからんね。
2025/12/03(水) 14:51:41.63ID:9srsrlEn
公式じゃないけどバイナリダウンロードできるようにしてるところがあったような
2025/12/03(水) 14:59:03.81ID:IXiFazox
cargo-binstall の話?
2025/12/03(水) 18:13:52.75ID:3Hibg4jw
>>51
インデックス登録に申し込みが必要なやつだったからcargo-binstallではないと思うけど
今探しても見つからないからそういうバイナリプロジェクトをインストールするやつと勘違いしたのかもしれん
インデックス登録に申し込みが必要なやつだったからcargo-binstallではないと思うけど
今探しても見つからないからそういうバイナリプロジェクトをインストールするやつと勘違いしたのかもしれん
2025/12/03(水) 18:46:38.64ID:2MnTI9t3
build.rsで生成済みのバイナリ(.rlib)をコピーする形式ならできそうだけど一般公開向けじゃないな
2025/12/03(水) 19:04:15.83ID:8JMYDz0K
>>53
バイナリだけならunsafeでは
バイナリだけならunsafeでは
55デフォルトの名無しさん
2025/12/03(水) 20:13:27.80ID:+yx3EwOE アーキテクチャ分バイナリ用意しないとならなくなるから
結構難しそう
結構難しそう
2025/12/03(水) 20:22:13.29ID:q2X/X5Gp
そもそもABIがstableじゃないからコンパイラのバージョン毎に配布しないといけないのでは
2025/12/03(水) 22:32:18.40ID:Eh+HvnbR
だっさ
2025/12/03(水) 22:35:08.95ID:CgpHbwYB
いろんな環境でネイティブコンパイルする言語だし労力に見合うリターンが無いよなあ
Windowsのことだけ考えてりゃ後はどうでもいいって時代ならともかく
Windowsのことだけ考えてりゃ後はどうでもいいって時代ならともかく
2025/12/06(土) 00:54:32.45ID:N0FmDDVX
Cloudflareがまたやらかしたな
Rust界の恥晒し
Rust界の恥晒し
2025/12/06(土) 01:33:54.85ID:YZiuqUxi
【CDN】米クラウドフレアが控訴、海賊版サイトめぐり「5億円の賠償命令」判決に不服
https://asahi.5ch.net/test/read.cgi/newsplus/1764907388/
https://asahi.5ch.net/test/read.cgi/newsplus/1764907388/
2025/12/06(土) 02:00:47.66ID:cYcM2N2O
>>59
今回の障害が起きたのはFL1(旧アーキ)のみ
>In our FL1 version of our proxy under certain circumstances, this latter change caused an error state that resulted in 500 HTTP error codes to be served from our network.
>Customers that have their web assets served by our older FL1 proxy AND had the Cloudflare Managed Ruleset deployed were impacted.
Reactのサーバーコンポーネントで見つかったRCE脆弱性対応のため、プロキシのバッファサイズを拡大したことによるバグ顕在化が原因とのこと
>As part of our ongoing work to protect customers using React against a critical vulnerability, CVE-2025-55182, we started rolling out an increase to our buffer size to 1MB, the default limit allowed by Next.js applications. We wanted to make sure as many customers as possible were protected.
>As soon as the change propagated to our network, code execution in our FL1 proxy reached a bug in our rules module which led to the following LUA exception:
>[lua] Failed to run module rulesets callback late_routing: /usr/local/nginx-fl/lua/modules/init.lua:314: attempt to index field 'execute' (a nil value)
Rustで書かれたFL2(新アーキ)で当該エラーは起こっていない
>This is a straightforward error in the code, which had existed undetected for many years. This type of code error is prevented by languages with strong type systems. In our replacement for this code in our new FL2 proxy, which is written in Rust, the error did not occur.
https://blog.cloudflare.com/5-december-2025-outage/
今回の障害が起きたのはFL1(旧アーキ)のみ
>In our FL1 version of our proxy under certain circumstances, this latter change caused an error state that resulted in 500 HTTP error codes to be served from our network.
>Customers that have their web assets served by our older FL1 proxy AND had the Cloudflare Managed Ruleset deployed were impacted.
Reactのサーバーコンポーネントで見つかったRCE脆弱性対応のため、プロキシのバッファサイズを拡大したことによるバグ顕在化が原因とのこと
>As part of our ongoing work to protect customers using React against a critical vulnerability, CVE-2025-55182, we started rolling out an increase to our buffer size to 1MB, the default limit allowed by Next.js applications. We wanted to make sure as many customers as possible were protected.
>As soon as the change propagated to our network, code execution in our FL1 proxy reached a bug in our rules module which led to the following LUA exception:
>[lua] Failed to run module rulesets callback late_routing: /usr/local/nginx-fl/lua/modules/init.lua:314: attempt to index field 'execute' (a nil value)
Rustで書かれたFL2(新アーキ)で当該エラーは起こっていない
>This is a straightforward error in the code, which had existed undetected for many years. This type of code error is prevented by languages with strong type systems. In our replacement for this code in our new FL2 proxy, which is written in Rust, the error did not occur.
https://blog.cloudflare.com/5-december-2025-outage/
2025/12/06(土) 09:10:08.41ID:WJ0DA+eG
驚いた!Rustすごい!
2025/12/06(土) 12:45:36.37ID:aue+ojQ+
池沼が
2025/12/06(土) 13:07:10.85ID:DTR3/WcD
Cloudflareのコンフィグ管理周りの未熟さも気になるが
それ以上にReact Server Componentは仕組み的に危ない
アプリレイヤーでのリクエストbodyのdeserializationにバグがあると
いきなりfull RCEに直結する仕組みとか怖すぎる
もうちょっと警鐘鳴らしたほうがいいんじゃないだろうか
それ以上にReact Server Componentは仕組み的に危ない
アプリレイヤーでのリクエストbodyのdeserializationにバグがあると
いきなりfull RCEに直結する仕組みとか怖すぎる
もうちょっと警鐘鳴らしたほうがいいんじゃないだろうか
2025/12/06(土) 13:52:58.00ID:OrfRaHNT
問題は障害がRustに関連したものかどうかではなくて、
Rust採用を大々的にアピールした有力テックの実体がこの程度だったというのを露呈したことだろうな
Rust驚いた勢のプライドを激しく毀損している
Rust採用を大々的にアピールした有力テックの実体がこの程度だったというのを露呈したことだろうな
Rust驚いた勢のプライドを激しく毀損している
66デフォルトの名無しさん
2025/12/06(土) 14:18:25.19ID:ARinuXXT 警鐘鳴らそうとして実証コード描いたらタイーホされる時代
2025/12/06(土) 16:19:08.82ID:LjhUSqqq
自作のソフトウェアのコードRustで書いてんだけどやっぱビルド周りが遅いな
cargo testも実行まで時間かかるし
もっと速くならんかな
cargo testも実行まで時間かかるし
もっと速くならんかな
68デフォルトの名無しさん
2025/12/06(土) 17:30:19.35ID:EhyTMf4b なんでcと速度は変わらんのにビルドこんな遅いん?
69デフォルトの名無しさん
2025/12/06(土) 17:43:56.21ID:z6f5ohL1 Rustはメモリリーク含めたリスクポイントをコンパイル時点で教えてくれるだけ。
panicで止めるかどうかは、異常系分類による。
停止させると逆に危険な場合もあるので、自前のexceptアナライザーは必須。
とにかく、関心事の放散が防止できれば、メモリアロケーションもリリースもミスは少なくなる。
SOLID原則に従えば、エレベーターも止まらない。 Rustの出発点が変な気もする。
アーキテクチャー不在がエレベーターを止める。
panicで止めるかどうかは、異常系分類による。
停止させると逆に危険な場合もあるので、自前のexceptアナライザーは必須。
とにかく、関心事の放散が防止できれば、メモリアロケーションもリリースもミスは少なくなる。
SOLID原則に従えば、エレベーターも止まらない。 Rustの出発点が変な気もする。
アーキテクチャー不在がエレベーターを止める。
2025/12/06(土) 23:34:40.22ID:DacREqLg
異常系という言葉を気軽に使う人間は絶対に信用してはいけない
重大障害のもと
重大障害のもと
2025/12/07(日) 01:56:01.10ID:h2UU4mQ3
どういう理屈で?
当該用途にはなんて言葉を使えばいいの?
当該用途にはなんて言葉を使えばいいの?
2025/12/07(日) 02:51:57.24ID:BRimgs0p
半永久的に動き続けることが求められるサーバーでは異常系終了を用いない
それだけの話だろう
それだけの話だろう
73デフォルトの名無しさん
2025/12/07(日) 03:31:02.57ID:Wacr4v8K イージーモード追加してくれんかな
trycatchとかgoみたいなエラー処理やりたい
trycatchとかgoみたいなエラー処理やりたい
2025/12/07(日) 04:14:18.61ID:YtRaGYdh
Goには例外try/throw/catchもなければResultのような代数的データ型もない
Goは多値でエラーを返してif文でそれがnilかどうかを判別するしかなくイージーモードとはかけ離れている
Goは多値でエラーを返してif文でそれがnilかどうかを判別するしかなくイージーモードとはかけ離れている
2025/12/07(日) 04:23:57.95ID:mtIDmBMJ
2025/12/07(日) 05:47:16.97ID:JhJJ9T6O
unwrap()の是非について焼き寿司氏のblog
https://burntsushi.net/unwrap/
仮にリンターでunwrap()の有無をチェックしても
slice[i] や RefCell、場合によっては算術演算のラップアラウンドでもパニックするよ
という指摘にはなるほどと思った
https://burntsushi.net/unwrap/
仮にリンターでunwrap()の有無をチェックしても
slice[i] や RefCell、場合によっては算術演算のラップアラウンドでもパニックするよ
という指摘にはなるほどと思った
77デフォルトの名無しさん
2025/12/07(日) 08:25:06.65ID:sR0SS/1I >>76
Linusの指摘そのままじゃない?
「ランタイムエラーでパニックを発生させるのは根本的に問題があると思っている」
OSみたいなクリティカルな用途だから要求も高いというのはあるけど、Rustはc用途を目指しているんだから、他人のコードであってもpanicを制御できるようにならなきゃ話にならんかと。
Linusの指摘そのままじゃない?
「ランタイムエラーでパニックを発生させるのは根本的に問題があると思っている」
OSみたいなクリティカルな用途だから要求も高いというのはあるけど、Rustはc用途を目指しているんだから、他人のコードであってもpanicを制御できるようにならなきゃ話にならんかと。
2025/12/07(日) 09:49:00.07ID:RKvo/7WP
>>77
std::panic::catch_unwind でキャッチする仕組みはある。
ただ C++ の例外と同じでランタイムサポートの支援で実現するものだから、それより下のレイヤ (OS など) を作ってるときには使いにくいんだよ。
結局のところ OS のレイヤでは C でやってるのと同じやり方でなんとかするしかない。
std::panic::catch_unwind でキャッチする仕組みはある。
ただ C++ の例外と同じでランタイムサポートの支援で実現するものだから、それより下のレイヤ (OS など) を作ってるときには使いにくいんだよ。
結局のところ OS のレイヤでは C でやってるのと同じやり方でなんとかするしかない。
2025/12/07(日) 11:31:53.26ID:DIZ3oEXF
2025/12/07(日) 13:14:55.38ID:4YzXVeaK
>>77
slice[i]やRefCellや算術演算で発生するpanicと
OOMをResultでハンドリングする機能がなく避けようがなかったpanicとは種類が違う
前者はプログラムコードのバグ
後者はプログラムコードにバグがなくても環境次第で発生してた
Linusが正確に何と言ったかは知らんけど
環境次第で実行時に発生するエラーを
panicとしてしか扱えなかったことを問題視したんじゃないか?
slice[i]やRefCellや算術演算で発生するpanicと
OOMをResultでハンドリングする機能がなく避けようがなかったpanicとは種類が違う
前者はプログラムコードのバグ
後者はプログラムコードにバグがなくても環境次第で発生してた
Linusが正確に何と言ったかは知らんけど
環境次第で実行時に発生するエラーを
panicとしてしか扱えなかったことを問題視したんじゃないか?
2025/12/07(日) 13:17:17.08ID:4YzXVeaK
2025/12/08(月) 06:14:53.89ID:78+iHLWM
iced 0.14.0がリリースされて、ついに日本語入力に対応したらしいよ
> Input method support. #2777
> Input method support. #2777
2025/12/08(月) 10:36:18.01ID:JY6W1FTm
驚き!
2025/12/08(月) 17:44:28.10ID:WGXF6l1Y
なにicedって
2025/12/08(月) 19:41:58.70ID:IqmmsKhE
UIライブラリや
86デフォルトの名無しさん
2025/12/09(火) 13:17:43.50ID:deXLWuOQ rustでUIやる意味何?計算量の多いゲームエンジンならわかるけどただのアプリならコンパイルの遅いrustでなんか作りたくねえ
87デフォルトの名無しさん
2025/12/09(火) 13:24:51.74ID:Lsl4QAiK make world と打ち込んで1週間待ってた頃に比べれば全然余裕
88デフォルトの名無しさん
2025/12/09(火) 13:28:09.51ID:H/C7AGZK Borlandがturbo rustを出すまで我慢だね
89デフォルトの名無しさん
2025/12/09(火) 13:31:43.36ID:H/C7AGZK turbo visionのcrateはあるんだw
90デフォルトの名無しさん
2025/12/09(火) 13:34:26.68ID:b/v/GR+5 でもgpuiつかったやつめちゃ速くない?
あとrust analyzerのメモリ爆食いどうにかしてクレメンス
あとrust analyzerのメモリ爆食いどうにかしてクレメンス
2025/12/09(火) 18:55:52.01ID:r9m3tzex
実際C++BuilderのGUI生産性と、Rustの言語としての速さと頑強さが組み合わされば無敵じゃね?
2025/12/09(火) 20:27:29.76ID:nH0p4cXR
まあエンバカデロはもう革新的な製品作りそうにないし
ヘジルスバーグはRustにあまり興味なさそうだけどね
ヘジルスバーグはRustにあまり興味なさそうだけどね
2025/12/10(水) 05:02:49.84ID:hPMgr9J3
Gemini君に聞いたら、RustはC++のNRVOに相当する最適化をC++よりも広い適用範囲で強力に行います
Destination Passing Style (DPS)
って事らしいけど本当かな?
Destination Passing Style (DPS)
って事らしいけど本当かな?
2025/12/10(水) 09:50:22.74ID:MSOh6BWq
C++ はオブジェクトへのアクセスが自由過ぎてエイリアス解析が大変 (最適化がしんどい) というのは昔から言われてた。
逆に言えば参照 (オブジェクトの依存関係) を完璧に追える Rust ではもっと上手くやれてもおかしくはないと思う。
逆に言えば参照 (オブジェクトの依存関係) を完璧に追える Rust ではもっと上手くやれてもおかしくはないと思う。
2025/12/10(水) 10:28:50.81ID:4/EtyeCo
面倒くさい奴だけど付き合うと意外と良い奴
2025/12/10(水) 11:00:48.64ID:WdeXXEzW
>>93
Rustの方針はシンプルかつ効率
関数がレジスタ返しできない大きなサイズのデータを返す時
呼び出し側の関数のスタックフレームに領域を確保
呼び出された関数は最初からその領域にデータを書き込む
もちろんこれらは裏で自動的に行われる
Rustの方針はシンプルかつ効率
関数がレジスタ返しできない大きなサイズのデータを返す時
呼び出し側の関数のスタックフレームに領域を確保
呼び出された関数は最初からその領域にデータを書き込む
もちろんこれらは裏で自動的に行われる
2025/12/10(水) 11:29:15.14ID:+wlu09xM
日本語不自由なやつしかおらんのかいな
2025/12/10(水) 11:31:30.40ID:hPMgr9J3
"Destination Passing Style" で検索するとHaskellの話しか出てこないからハルシネーションか?
99デフォルトの名無しさん
2025/12/10(水) 11:32:51.92ID:v/mPNkvx RustはUIでも覇権取れる?
100デフォルトの名無しさん
2025/12/10(水) 11:48:09.95ID:7/+OAEHE はい
101デフォルトの名無しさん
2025/12/10(水) 12:06:24.08ID:L7XTEUYD C++でもまじめにstd::move()通してればRust並に最適化できるんじゃね?
move後のアクセスをコンパイラが止めないからミスった時に何が起こるか分からんけど
move後のアクセスをコンパイラが止めないからミスった時に何が起こるか分からんけど
102デフォルトの名無しさん
2025/12/10(水) 12:18:26.32ID:d+nvH+x7 equi
103デフォルトの名無しさん
2025/12/10(水) 12:28:49.76ID:MSOh6BWq >>101
C++ では返却値は std::move しないのが望ましい場合が多い。
コピー省略できるはずのところでムーブになってしまうことがあるし、ムーブが妥当なときはなにも書いていなくても暗黙にムーブするので書く意味がない。
C++ では返却値は std::move しないのが望ましい場合が多い。
コピー省略できるはずのところでムーブになってしまうことがあるし、ムーブが妥当なときはなにも書いていなくても暗黙にムーブするので書く意味がない。
104デフォルトの名無しさん
2025/12/10(水) 12:31:05.43ID:09K8JBzk Rustは概念的には常に自動的にmoveされる
そして生成コードはレジスタ返しか足りなければRVOに自動的になる
だからC++のような複雑さも面倒臭さもない
そして生成コードはレジスタ返しか足りなければRVOに自動的になる
だからC++のような複雑さも面倒臭さもない
105デフォルトの名無しさん
2025/12/10(水) 12:44:35.63ID:USY1WYCN moveが暗黙で実際どうなんかがわからんのはC++の辛いところ
std::moveって明記してるのにコピーした時は、コンパイルエラーにしてくれてればよかったのに
std::moveって明記してるのにコピーした時は、コンパイルエラーにしてくれてればよかったのに
106デフォルトの名無しさん
2025/12/10(水) 12:47:17.53ID:hPMgr9J3107デフォルトの名無しさん
2025/12/10(水) 12:58:04.34ID:HmdX4Hif108デフォルトの名無しさん
2025/12/10(水) 13:16:30.40ID:L7XTEUYD Rustはできるだけインライン展開してreturn自体を減らしてそう
C++とはコンパイルの単位とプロセスが違うからRVOは重視してないかもしれない
C++とはコンパイルの単位とプロセスが違うからRVOは重視してないかもしれない
109デフォルトの名無しさん
2025/12/10(水) 13:57:35.08ID:eneesrJf >>107
んな大袈裟な話じゃないし、ボトルネックになってない限り実際にRVOされてるかどうかまで気にする人は少ない
コピーのコストが大きな問題になるようなクソでかい構造体なんて実際問題として滅多にないからね
コンテナは基本的に中でヒープ使ってるってのはさすがに知ってるよな?
んな大袈裟な話じゃないし、ボトルネックになってない限り実際にRVOされてるかどうかまで気にする人は少ない
コピーのコストが大きな問題になるようなクソでかい構造体なんて実際問題として滅多にないからね
コンテナは基本的に中でヒープ使ってるってのはさすがに知ってるよな?
110デフォルトの名無しさん
2025/12/10(水) 16:52:00.70ID:jR2AbXeD non-goalの余白に無限の願望を託す人
111デフォルトの名無しさん
2025/12/10(水) 17:49:43.54ID:HmdX4Hif112デフォルトの名無しさん
2025/12/10(水) 19:32:55.35ID:SgLOgf3g なんでRustはReactに勝てないのか分からんのやが誰か教えてくれ
113デフォルトの名無しさん
2025/12/10(水) 19:56:08.60ID:KLOOllO5 web apiてなんであんなうんこスクリプト言語で書くってことになったんだろう
js自体の機能てほぼないしweb apiいじってるだけだからcでもいいやん
js自体の機能てほぼないしweb apiいじってるだけだからcでもいいやん
114デフォルトの名無しさん
2025/12/10(水) 19:59:11.30ID:IFiV5w4p rustでは値渡しはクローンしなければムーブになるだろうな
115デフォルトの名無しさん
2025/12/10(水) 20:34:20.54ID:9lNpGh2X >>114
C++のmoveはコピーコンストラクタの呼び出しを回避するのが目的である一方、
Rustの値渡しは(最適化を無視すれば)常に単なるビット毎のシャローコピーであり、RustにC++のmoveに相当するものは存在しない
Rustのmoveは所有権の移動という文脈上の仮想的な操作でしかなく、代入の実行時挙動は一切変化しない点でC++のmoveとは全く異なる概念
C++のmoveはコピーコンストラクタの呼び出しを回避するのが目的である一方、
Rustの値渡しは(最適化を無視すれば)常に単なるビット毎のシャローコピーであり、RustにC++のmoveに相当するものは存在しない
Rustのmoveは所有権の移動という文脈上の仮想的な操作でしかなく、代入の実行時挙動は一切変化しない点でC++のmoveとは全く異なる概念
116デフォルトの名無しさん
2025/12/10(水) 20:37:02.84ID:0wVpILab JavaScriptへトランスパイルできる言語はいくつかある
TypeScriptは言わずもがなDartとKotlinも公式で保守されてる
JavaScriptを書くために必ずしもJavaScriptを使う必要は無い
TypeScriptは言わずもがなDartとKotlinも公式で保守されてる
JavaScriptを書くために必ずしもJavaScriptを使う必要は無い
117デフォルトの名無しさん
2025/12/10(水) 20:41:05.28ID:0wVpILab118デフォルトの名無しさん
2025/12/10(水) 23:42:16.04ID:kHSO1Qs/119デフォルトの名無しさん
2025/12/11(木) 00:22:02.01ID:cU6/FCF6 >シングルスレッドだから排他制御は要らない
お前がそう思うんならそうなんだろうお前ん中ではな
お前がそう思うんならそうなんだろうお前ん中ではな
120デフォルトの名無しさん
2025/12/11(木) 00:23:17.13ID:cU6/FCF6 同時実行制御のことを雑に排他制御と呼ぶやつにプログラミングをさせてはいけない
排他制御も同時実行制御もどちらも絶対理解してないから
排他制御も同時実行制御もどちらも絶対理解してないから
121デフォルトの名無しさん
2025/12/11(木) 08:30:48.24ID:CybeALG1 >>120
誤解してないか?
こういう関係だぞ
https://en.wikipedia.org/wiki/Mutual_exclusion
In computer science, "mutual exclusion" (排他制御) is a property of "concurrency control" (同時実行制御), which is instituted for the purpose of preventing race conditions.
誤解してないか?
こういう関係だぞ
https://en.wikipedia.org/wiki/Mutual_exclusion
In computer science, "mutual exclusion" (排他制御) is a property of "concurrency control" (同時実行制御), which is instituted for the purpose of preventing race conditions.
122デフォルトの名無しさん
2025/12/11(木) 10:34:14.13ID:FEj7H+LS RustのmoveもC++のmoveも、
「(仮に最適化されずとも)構造体のシャローコピーのコストは一般に軽く、多くの場合問題にならない」
というのが大前提なのだけど、>>107>>111は根本的なところを理解してなそう
RustやC++に限らず、GoやC#など構造体の値渡しができる言語に基本的に共通する大前提だね
「(仮に最適化されずとも)構造体のシャローコピーのコストは一般に軽く、多くの場合問題にならない」
というのが大前提なのだけど、>>107>>111は根本的なところを理解してなそう
RustやC++に限らず、GoやC#など構造体の値渡しができる言語に基本的に共通する大前提だね
123デフォルトの名無しさん
2025/12/11(木) 11:24:54.77ID:KdoTRU3f そういう問題ではない
呼び出し元関数のスタックフレームに直接書き込むのがRVO
配列もヒープを利用しない
呼び出し元関数のスタックフレームに直接書き込むのがRVO
配列もヒープを利用しない
124デフォルトの名無しさん
2025/12/11(木) 12:43:57.33ID:UITvxyr5 レジスタ渡しよりも高速
余分なコードが介在しないCよりも
余分なコードだらけのRustが速くなるとしたらその辺が原因かもな
余分なコードが介在しないCよりも
余分なコードだらけのRustが速くなるとしたらその辺が原因かもな
125デフォルトの名無しさん
2025/12/11(木) 12:54:01.07ID:sTofDfRv 複オジだらけ
126デフォルトの名無しさん
2025/12/11(木) 12:58:56.52ID:sgwHswzM 自作自演
127デフォルトの名無しさん
2025/12/11(木) 18:48:54.72ID:KdoTRU3f128デフォルトの名無しさん
2025/12/11(木) 22:15:21.89ID:MZEzdKoQ RVOとは違う話だけどC++は戻り値を std::move した方が良いケースは結構あるぞ
戻り値というか、戻り値の型に渡すコンストラクタに対して渡す時の話だけど
戻り値が std::string や std:: vector をフィールドに持つ構造体やタプルで、最後の return で初期化してるような場合
return { std::move(str); };
こういう場合は str は自動ではちゃんとムーブしてくれなかった気がする
(最近のC++は知らんから、間違ってたら指摘がほしい)
戻り値というか、戻り値の型に渡すコンストラクタに対して渡す時の話だけど
戻り値が std::string や std:: vector をフィールドに持つ構造体やタプルで、最後の return で初期化してるような場合
return { std::move(str); };
こういう場合は str は自動ではちゃんとムーブしてくれなかった気がする
(最近のC++は知らんから、間違ってたら指摘がほしい)
129デフォルトの名無しさん
2025/12/11(木) 22:42:19.12ID:9uKNSHMX みんな当たり前にC++を引き合いに出しているけど、Rust書いてる人でC++エアプ勢っていないんだろうか
130デフォルトの名無しさん
2025/12/11(木) 23:34:58.81ID:ueLwSjw6 Cのみはいるかもしれないが、少なくともC系統の言語を触れてないと
Rustがこんなに苦労して解決しようとしてる問題への実感が持てなくて
GC言語やスクリプトよりちょっと速いだけの、冗長構文クソ言語以外に感想持てなそう
Rustがこんなに苦労して解決しようとしてる問題への実感が持てなくて
GC言語やスクリプトよりちょっと速いだけの、冗長構文クソ言語以外に感想持てなそう
131デフォルトの名無しさん
2025/12/11(木) 23:46:18.77ID:lRBvFeeP >>121
何を誤解してると思ったの?
それとその定義だとconcurrency controlは常にmutual exclusionというpropertyを持ってるという関係になるけどCSの一般的定義ではそういう関係ではなくてconcurrency controlを実現する手段の一つとか実現手段の一部という関係
何を誤解してると思ったの?
それとその定義だとconcurrency controlは常にmutual exclusionというpropertyを持ってるという関係になるけどCSの一般的定義ではそういう関係ではなくてconcurrency controlを実現する手段の一つとか実現手段の一部という関係
132デフォルトの名無しさん
2025/12/12(金) 00:36:09.89ID:R4MfitDw 横からだけど、引用文においてもミューテックスは並行プログラミングにおける安全性アプローチのひとつと定義してると思うが
両者共に「並行制御 ⊃ 排他制御」という認識ではないの?
何が論点になってんだ?
両者共に「並行制御 ⊃ 排他制御」という認識ではないの?
何が論点になってんだ?
133デフォルトの名無しさん
2025/12/12(金) 01:29:09.26ID:lYmP2IfW134デフォルトの名無しさん
2025/12/12(金) 02:06:45.48ID:hV57hqyS135デフォルトの名無しさん
2025/12/12(金) 02:22:06.56ID:05W/5u4b >>133
>JavaScriptは「並行」プログラミングかつシングルスレッドなのでミューテックスが不要
そこは JavaScript は並行プログラミング"でありながら"じゃね?
「ミューテックスの要否」は「シングルスレッドであること」で定まり、したがって「並行プログラミングであること」を接続詞"かつ"で「並行させる」のは説明として不適かと
そしてなんについて議論してんの?
おふたりが論点としているものがはたから見ていて判然とせん
>JavaScriptは「並行」プログラミングかつシングルスレッドなのでミューテックスが不要
そこは JavaScript は並行プログラミング"でありながら"じゃね?
「ミューテックスの要否」は「シングルスレッドであること」で定まり、したがって「並行プログラミングであること」を接続詞"かつ"で「並行させる」のは説明として不適かと
そしてなんについて議論してんの?
おふたりが論点としているものがはたから見ていて判然とせん
136デフォルトの名無しさん
2025/12/12(金) 02:41:47.22ID:H4zR5jbz >>132が並列と並行の区別ができてないからでしょう
137デフォルトの名無しさん
2025/12/12(金) 03:11:39.93ID:s9XOKHrp >>136
それは具体的にどの部分からそう読み取ったの?
「シングルスレッドであること」によって、「ミューテックスの要否」は定まる
したがって並列か並行かとは別議論では?
そもそも本件において前者は考慮不要かと
それは具体的にどの部分からそう読み取ったの?
「シングルスレッドであること」によって、「ミューテックスの要否」は定まる
したがって並列か並行かとは別議論では?
そもそも本件において前者は考慮不要かと
138デフォルトの名無しさん
2025/12/12(金) 03:30:00.02ID:H4zR5jbz139デフォルトの名無しさん
2025/12/12(金) 06:22:33.05ID:ZfrS6xvk >>138
>mutexは同じCPU内の話だから並列=マルチスレッド
ミューテックスの要否は端的に言えば「共有リソースに対するアクセスの有無」
マルチスレッドは並列を実現するためのいち技術であり、限定するのはミスリード
マルチコア、マルチソケット(NUMAなど)もまたしかり
「同じCPU内」という単位は不正確
>でも>>132は区別できてなくて並行プログラミングと書いてます
「並行制御 ⊃ 排他制御」と同じこと
「並行 ⊃ 並列」で並行は抽象レベルの概念であり、並列は物理レベルの実現方法
前者が後者を含意するのでこれらの記述は極めて自然
>並行プログラミングでは値を同時に更新することがないためmutexは要らないです
したがってこれは明確に誤り
>>136 を熨斗付けてお返しいたします
>並行並列プログラミングまたは並列プログラミングの時のみmutexが要ります
同上
レイヤの違う概念、用語を並行させて書いてしまってる
重ねるけれど、ミューテックスの要否基準は「共有状態の同時アクセス可能性」のみ
とりあえず >>121 の引用部分がそもそも間違ってるという主張?
そうであるなら以下に対して反論どうぞ
>In computer science, mutual exclusion is a property of concurrency control, which is instituted for the purpose of preventing race conditions.
>mutexは同じCPU内の話だから並列=マルチスレッド
ミューテックスの要否は端的に言えば「共有リソースに対するアクセスの有無」
マルチスレッドは並列を実現するためのいち技術であり、限定するのはミスリード
マルチコア、マルチソケット(NUMAなど)もまたしかり
「同じCPU内」という単位は不正確
>でも>>132は区別できてなくて並行プログラミングと書いてます
「並行制御 ⊃ 排他制御」と同じこと
「並行 ⊃ 並列」で並行は抽象レベルの概念であり、並列は物理レベルの実現方法
前者が後者を含意するのでこれらの記述は極めて自然
>並行プログラミングでは値を同時に更新することがないためmutexは要らないです
したがってこれは明確に誤り
>>136 を熨斗付けてお返しいたします
>並行並列プログラミングまたは並列プログラミングの時のみmutexが要ります
同上
レイヤの違う概念、用語を並行させて書いてしまってる
重ねるけれど、ミューテックスの要否基準は「共有状態の同時アクセス可能性」のみ
とりあえず >>121 の引用部分がそもそも間違ってるという主張?
そうであるなら以下に対して反論どうぞ
>In computer science, mutual exclusion is a property of concurrency control, which is instituted for the purpose of preventing race conditions.
140デフォルトの名無しさん
2025/12/12(金) 06:46:29.30ID:H4zR5jbz >>139
あなたのような知識が足りなく偏った人を相手にするのは大変だけど
単に並列プログラミングといえば複数のPCを用いる分散型の並列プログラミングを含むのよ
話題の領域を明確にするために今回はmutexの話だから分散型の話題ではないと限定しているわけ
そういう常識を持たないかあえて無視して無意味に突くだけのダメ人間みたいだからこれ以上はくだらないやりとりしません
あなたのような知識が足りなく偏った人を相手にするのは大変だけど
単に並列プログラミングといえば複数のPCを用いる分散型の並列プログラミングを含むのよ
話題の領域を明確にするために今回はmutexの話だから分散型の話題ではないと限定しているわけ
そういう常識を持たないかあえて無視して無意味に突くだけのダメ人間みたいだからこれ以上はくだらないやりとりしません
141デフォルトの名無しさん
2025/12/12(金) 08:00:06.77ID:s73KDvVl >>140
>単に並列プログラミングといえば複数のPCを用いる分散型の並列プログラミングを含むのよ
いやあ、そんなことはないと思うが
少なくともこちらは本件において分散コンピューティングには触れていない
>今回はmutexの話だから分散型の話題ではないと限定しているわけ
心得てるけど
その上で「ミューテックスの要否」は「共有リソースに対する同時アクセスの有無」と言明しているわけであり
あなたが以下のようにミューテックスの用途を誤解、もしくはミスリードをしていたもので、反例をいくつか挙げてわざわざ説明したのであって(マルチコア、マルチCPU = マルチソケット⦅同一マシン内のNUMAノード間⦆)
マルチスレッドは並列の一形態でイコールではない
共有リソースへの同時アクセスが起こりうるなら、スレッド、コア、ソケットの別なく排他制御はごくごく自然な選択肢
ちなみにNUMAはわかる?複数PCの使用や分散技術の話じゃないよ
>mutexは同じCPU内の話だから並列=マルチスレッドでしょ
そしてそもそも並列と並行の区別だが、これについてもレイヤが違うと説明したはず
「並行 ⊃ 並列」
並行はより上位の抽象概念だから、並行プログラミングに言及する際、ミューテックス(排他制御)を取り上げるのは当たり前
したがって以下は明確に誤ってるかと
>並行プログラミングでは値を同時に更新することがないためmutexは要らないです
並列だろうが並行だろうが、リソースへの競合状態が起こりえるなら、ミューテックスは要検討
>単に並列プログラミングといえば複数のPCを用いる分散型の並列プログラミングを含むのよ
いやあ、そんなことはないと思うが
少なくともこちらは本件において分散コンピューティングには触れていない
>今回はmutexの話だから分散型の話題ではないと限定しているわけ
心得てるけど
その上で「ミューテックスの要否」は「共有リソースに対する同時アクセスの有無」と言明しているわけであり
あなたが以下のようにミューテックスの用途を誤解、もしくはミスリードをしていたもので、反例をいくつか挙げてわざわざ説明したのであって(マルチコア、マルチCPU = マルチソケット⦅同一マシン内のNUMAノード間⦆)
マルチスレッドは並列の一形態でイコールではない
共有リソースへの同時アクセスが起こりうるなら、スレッド、コア、ソケットの別なく排他制御はごくごく自然な選択肢
ちなみにNUMAはわかる?複数PCの使用や分散技術の話じゃないよ
>mutexは同じCPU内の話だから並列=マルチスレッドでしょ
そしてそもそも並列と並行の区別だが、これについてもレイヤが違うと説明したはず
「並行 ⊃ 並列」
並行はより上位の抽象概念だから、並行プログラミングに言及する際、ミューテックス(排他制御)を取り上げるのは当たり前
したがって以下は明確に誤ってるかと
>並行プログラミングでは値を同時に更新することがないためmutexは要らないです
並列だろうが並行だろうが、リソースへの競合状態が起こりえるなら、ミューテックスは要検討
142デフォルトの名無しさん
2025/12/12(金) 09:10:06.26ID:9WR4PduZ JavascriptのPromise chaining(シリアル実行)は排他制御に含まれると思う
前の処理がPendingの間は次の処理を実行しないから前の処理で更新中のデータが次の処理で参照されない
前の処理がPendingの間は次の処理を実行しないから前の処理で更新中のデータが次の処理で参照されない
143デフォルトの名無しさん
2025/12/12(金) 10:18:13.52ID:9YTxXu+/144デフォルトの名無しさん
2025/12/12(金) 19:40:37.53ID:UEulKxih T型を[T;1]型にするのはゼロコストだよね
145デフォルトの名無しさん
2025/12/12(金) 21:31:17.66ID:XV88DTfm >>143
>並行処理=同時進行するが同時に実行されることはない
>並列処理=同時に実行されるためメモリ競合などの対策が必要
教科書レベルのあるある理解(誤解)
既述したよう、並列処理は並行処理のいち手段
「並行」という概念の中に含まれる
それを物理レベルで「並列に処理」(同時実行)するか否かは別議論であり、レイヤが違う
並列でないなら競合しないの?
並列でないならマルチスレッド処理できない?
整理したいけど >>121 の引用部分に異議ある立場?
>In computer science, mutual exclusion is a property of concurrency control, which is instituted for the purpose of preventing race conditions.
「concurrent」をどう訳します?
>並行処理=同時進行するが同時に実行されることはない
>並列処理=同時に実行されるためメモリ競合などの対策が必要
教科書レベルのあるある理解(誤解)
既述したよう、並列処理は並行処理のいち手段
「並行」という概念の中に含まれる
それを物理レベルで「並列に処理」(同時実行)するか否かは別議論であり、レイヤが違う
並列でないなら競合しないの?
並列でないならマルチスレッド処理できない?
整理したいけど >>121 の引用部分に異議ある立場?
>In computer science, mutual exclusion is a property of concurrency control, which is instituted for the purpose of preventing race conditions.
「concurrent」をどう訳します?
146デフォルトの名無しさん
2025/12/12(金) 22:57:57.08ID:QoWL0Mdr147デフォルトの名無しさん
2025/12/12(金) 23:21:06.40ID:h4KMYPn3 wikipediaを見る限り>>143の区別みたいよ
>並行計算は、並列計算(parallel computing)としばしば混同される。
>
>並列計算はマルチプロセッサ前提であり、独立した各プロセッサが割り振られた計算を同時実行することを指す。
>故にシングルプロセッサでは不可になる[2]。
>分散システム内の各コンピュータが割り振られた計算を同時実行するのもそうである。
>
>並行計算は一つのプロセッサに複数のタスクを存在させて、各タスクに計算を割り振ることを指す[4]。
>そこではタイムシェアリング技術などが使われる。
>並行計算は、並列計算(parallel computing)としばしば混同される。
>
>並列計算はマルチプロセッサ前提であり、独立した各プロセッサが割り振られた計算を同時実行することを指す。
>故にシングルプロセッサでは不可になる[2]。
>分散システム内の各コンピュータが割り振られた計算を同時実行するのもそうである。
>
>並行計算は一つのプロセッサに複数のタスクを存在させて、各タスクに計算を割り振ることを指す[4]。
>そこではタイムシェアリング技術などが使われる。
148デフォルトの名無しさん
2025/12/12(金) 23:23:20.57ID:tMtI2IXb >>132
AはBのproperty(特性/性質/属性)の一つという定義と
AはBを実現するアプローチの一つ定義は同じではないよ
これはどっちかが絶対的な正解という問題ではなくて
mutual exclusionをどういう意味範囲で使ってるかの問題
compare-and-swapのようなatomic operationでも
レイヤーを掘り下げればクリティカルセクションがあって
mutual exclusionというpropertyを持ってると考えるなら
wikipediaの定義でもおかしくはない
(一般的かどうかはさておき)
あと何を誤解してると思ったのかは書いてもらわないとわからん
AはBのproperty(特性/性質/属性)の一つという定義と
AはBを実現するアプローチの一つ定義は同じではないよ
これはどっちかが絶対的な正解という問題ではなくて
mutual exclusionをどういう意味範囲で使ってるかの問題
compare-and-swapのようなatomic operationでも
レイヤーを掘り下げればクリティカルセクションがあって
mutual exclusionというpropertyを持ってると考えるなら
wikipediaの定義でもおかしくはない
(一般的かどうかはさておき)
あと何を誤解してると思ったのかは書いてもらわないとわからん
149デフォルトの名無しさん
2025/12/12(金) 23:45:04.62ID:tMtI2IXb >>133
1. ミューテックスと排他制御(mutual exclusion)を区別しよう
ミューテックスは排他制御を実現する方法の一つで
locked/unlockedの状態を管理する変数だったり構造体だったりの実装のこと
排他制御(mutual exclusion)という概念とは別もの
2. ワーカーを使わないシングルスレッドのJavaScriptにおいて排他制御は不要か?
もちろん必要
https://web.mit.edu/6.102/www/sp25/classes/16-mutual-exclusion/
3. ワーカーを使わないシングルスレッドのJavaScriptにおいてミューテックスは不要か?
ミューテックスが必要な状況ももちろんある
例えば複数のダウンロードリクエストを並行処理しているダウンローダーで
特定のサイトは最大1コネクションのダウンロードしか許可しておらず
複数同時ダウンロードをすると全部強制終了されてしまう状況とか
1. ミューテックスと排他制御(mutual exclusion)を区別しよう
ミューテックスは排他制御を実現する方法の一つで
locked/unlockedの状態を管理する変数だったり構造体だったりの実装のこと
排他制御(mutual exclusion)という概念とは別もの
2. ワーカーを使わないシングルスレッドのJavaScriptにおいて排他制御は不要か?
もちろん必要
https://web.mit.edu/6.102/www/sp25/classes/16-mutual-exclusion/
3. ワーカーを使わないシングルスレッドのJavaScriptにおいてミューテックスは不要か?
ミューテックスが必要な状況ももちろんある
例えば複数のダウンロードリクエストを並行処理しているダウンローダーで
特定のサイトは最大1コネクションのダウンロードしか許可しておらず
複数同時ダウンロードをすると全部強制終了されてしまう状況とか
150デフォルトの名無しさん
2025/12/12(金) 23:59:32.76ID:2HyQrFLK >>149
無知だな
基本を分かっていない
ミューテックスはマルチスレッド時に同時アクセスの競合が起きる可能性がある場合に用いてスレッドを待たせる機能がある
特定のサイトは最大1コネクションのダウンロードしか許可してない場合
ワーカーを用いないJavaScriptは並行処理なのでミューテックスは不要
単なるカウンター変数のみでよい
無知だな
基本を分かっていない
ミューテックスはマルチスレッド時に同時アクセスの競合が起きる可能性がある場合に用いてスレッドを待たせる機能がある
特定のサイトは最大1コネクションのダウンロードしか許可してない場合
ワーカーを用いないJavaScriptは並行処理なのでミューテックスは不要
単なるカウンター変数のみでよい
151デフォルトの名無しさん
2025/12/13(土) 00:03:09.62ID:1Rkfvz+k >>143
>並行処理=同時進行するが同時に実行されることはない
>並列処理=同時に実行されるためメモリ競合などの対策が必要
一般的な定義からすると↑これはどっちも間違ってる
並行処理は同時実行されてる部分もあれば同時実行できない部分ももある
同時実行できない部分の制御のため競合対策が必要
並列処理は同時実行可能な処理を指すので競合対策は不要
同時実行できない処理を並列処理とは普通は言わない
>並行処理=同時進行するが同時に実行されることはない
>並列処理=同時に実行されるためメモリ競合などの対策が必要
一般的な定義からすると↑これはどっちも間違ってる
並行処理は同時実行されてる部分もあれば同時実行できない部分ももある
同時実行できない部分の制御のため競合対策が必要
並列処理は同時実行可能な処理を指すので競合対策は不要
同時実行できない処理を並列処理とは普通は言わない
152デフォルトの名無しさん
2025/12/13(土) 00:07:42.28ID:TTFtgmCI153デフォルトの名無しさん
2025/12/13(土) 00:07:52.21ID:1Rkfvz+k154デフォルトの名無しさん
2025/12/13(土) 00:36:34.04ID:1Rkfvz+k 現実的には単なるカウンター変数をミューテックスとして利用するだけではダウンローダーに必要な機能を満たせないからキューイングできるタイプの非同期ミューテックスを使う
155デフォルトの名無しさん
2025/12/13(土) 01:22:57.78ID:O7dPDRw7 >>153
いいえカウンター変数とmutexは異なります
mutexは他のスレッドがロック中にスレッドを待たされる機能と利用が可能になったときに再開させる機能を伴います
その効率のためOSが提供するfutex機能を用いてmutexを実装する環境が多いです
いいえカウンター変数とmutexは異なります
mutexは他のスレッドがロック中にスレッドを待たされる機能と利用が可能になったときに再開させる機能を伴います
その効率のためOSが提供するfutex機能を用いてmutexを実装する環境が多いです
156デフォルトの名無しさん
2025/12/13(土) 03:20:12.64ID:diqjnlrE >>147
参照された記事には並行処理における競合対策は不要と記載されていました?
また、「コンピューティング」という、物理、実装を意識するレベルでの具体的差異をこちらは否定していない
その前段となる概念レベルの関係についての言及であり
>Concurrency is a broader concept that encompasses several related ideas, including:
>Parallelism (simultaneous execution on multiple processing units). Parallelism executes tasks independently on multiple CPU cores. Concurrency allows for multiple threads of control at the program level, which can use parallelism or time-slicing to perform these tasks. Programs may exhibit parallelism only, concurrency only, both parallelism and concurrency, neither.
https://en.wikipedia.org/wiki/Concurrency_%28computer_science%29#Related_concepts
実際に並行、並列処理の実装にあたっては、物理、ハードウェア的な制約に基づき、当然、両者は弁別される
言うまでもないがシングルコアにて並列処理は実装できまい
さりとて逆もしかりとならないわけで
前者は後者を包含している、後者は前者の下位概念であり、具体的な実現手段
「並行 ⊃ 並行、並列」のように概念のポケットに、それとは別に具体的技術としての「並行」「並列」が入るイメージ
そして繰り返すけど、本件論点は競合考慮、ミューテックスの要否では?
並行プログラミングする際、これを不要とする立場?
参照された記事には並行処理における競合対策は不要と記載されていました?
また、「コンピューティング」という、物理、実装を意識するレベルでの具体的差異をこちらは否定していない
その前段となる概念レベルの関係についての言及であり
>Concurrency is a broader concept that encompasses several related ideas, including:
>Parallelism (simultaneous execution on multiple processing units). Parallelism executes tasks independently on multiple CPU cores. Concurrency allows for multiple threads of control at the program level, which can use parallelism or time-slicing to perform these tasks. Programs may exhibit parallelism only, concurrency only, both parallelism and concurrency, neither.
https://en.wikipedia.org/wiki/Concurrency_%28computer_science%29#Related_concepts
実際に並行、並列処理の実装にあたっては、物理、ハードウェア的な制約に基づき、当然、両者は弁別される
言うまでもないがシングルコアにて並列処理は実装できまい
さりとて逆もしかりとならないわけで
前者は後者を包含している、後者は前者の下位概念であり、具体的な実現手段
「並行 ⊃ 並行、並列」のように概念のポケットに、それとは別に具体的技術としての「並行」「並列」が入るイメージ
そして繰り返すけど、本件論点は競合考慮、ミューテックスの要否では?
並行プログラミングする際、これを不要とする立場?
157デフォルトの名無しさん
2025/12/13(土) 07:39:32.48ID:seiImwq0 >>156
並列を用いない場合=マルチスレッドを用いない場合=シングルスレッドの場合、
並行処理でメモリアクセスが同時に実行されることはないためメモリ競合は発生しない。
つまりカウンターやフラグなどあらゆる変数についてMutexを用いる必要がない。
これはJavaScriptだけでなくRustでシングルスレッドで非同期タスクを並行処理する場合も同じ。
具体的にはtokioのspawn (並行&並列)はSendトレイト境界があるため変数共有にMutexなどが必須だが、
spawn_local (並行のみ)はSendトレイト境界がないためMutexは不要という形で表れる。
並列を用いない場合=マルチスレッドを用いない場合=シングルスレッドの場合、
並行処理でメモリアクセスが同時に実行されることはないためメモリ競合は発生しない。
つまりカウンターやフラグなどあらゆる変数についてMutexを用いる必要がない。
これはJavaScriptだけでなくRustでシングルスレッドで非同期タスクを並行処理する場合も同じ。
具体的にはtokioのspawn (並行&並列)はSendトレイト境界があるため変数共有にMutexなどが必須だが、
spawn_local (並行のみ)はSendトレイト境界がないためMutexは不要という形で表れる。
158デフォルトの名無しさん
2025/12/13(土) 08:07:26.77ID:xrC7LiGl 関連型ってT<U>みたいな型依存型ができないからその代用だよね
159デフォルトの名無しさん
2025/12/13(土) 10:56:12.72ID:vOZmwqT4 シングルスレッドでも2つの非同期処理がawaitを挟んで同じメモリを参照・更新する時は
data raceのリスクがあるから気をつけてくれ
Rustの場合は&mutが他の参照をブロックするから問題になりにくいけど
data raceのリスクがあるから気をつけてくれ
Rustの場合は&mutが他の参照をブロックするから問題になりにくいけど
160デフォルトの名無しさん
2025/12/13(土) 11:00:34.93ID:/DhArST+ 日本語より
concurrent
parallel
distributed
で議論した方が良いと思うの
https://zenn.dev/koron/articles/3ddcaaeae37f9befdf70
concurrent
parallel
distributed
で議論した方が良いと思うの
https://zenn.dev/koron/articles/3ddcaaeae37f9befdf70
161デフォルトの名無しさん
2025/12/13(土) 11:37:19.65ID:uGVM51WN 並行はヘテロ
並列はホモ
並列はホモ
162デフォルトの名無しさん
2025/12/13(土) 12:58:20.04ID:8qQHr6Hn 同時アクセスの可能性があるものにmutexでロックかけろってだけじゃないの
163デフォルトの名無しさん
2025/12/13(土) 14:26:19.82ID:vEYY11o1164デフォルトの名無しさん
2025/12/13(土) 14:26:52.20ID:DjrUGhug >>162
Mutexは別々のスレッド同士が同時アクセスするデータ競合を防げるよ
通常のstd::sys::Mutexだと既にロックを持っている同じスレッドでロックしようとすると動作の保証はなくてパニックするかデッドロックするかなど環境依存なので用いてはダメだけど
つまりそれはマルチスレッド用
Mutexは別々のスレッド同士が同時アクセスするデータ競合を防げるよ
通常のstd::sys::Mutexだと既にロックを持っている同じスレッドでロックしようとすると動作の保証はなくてパニックするかデッドロックするかなど環境依存なので用いてはダメだけど
つまりそれはマルチスレッド用
165デフォルトの名無しさん
2025/12/13(土) 14:48:01.82ID:vvvRno5n 一般的なアプリケーションプログラミングにおいては、排他制御の対象はデータというよりコードの特定のセクションであることが多い
当該セクションで扱うのが単一のデータストアである場合はそのデータストアに対する単純なロックに帰着するが、実際にはそうでない場合も多い
当該セクションで扱うのが単一のデータストアである場合はそのデータストアに対する単純なロックに帰着するが、実際にはそうでない場合も多い
166デフォルトの名無しさん
2025/12/13(土) 15:10:49.43ID:6mP4NQXw ケントンプソンに書き直してもらったほうがいいだろこの言語
167デフォルトの名無しさん
2025/12/13(土) 20:30:59.61ID:CZ2kQ+mp 自演するにしても、逆に自演ってバレバレになる1レスごとルーパチじゃなく
せめてWi-Fiとスマホ回線でやればいいのに
せめてWi-Fiとスマホ回線でやればいいのに
168デフォルトの名無しさん
2025/12/14(日) 00:57:37.50ID:xj54TDj4 >>157
まず初手の等式がぶっ飛んでいる
並行、並列という処理の性質とその処理を実際に行う際に用いるモデルの話は直交概念、因果の幅跳び甚だしい
「並列でない」ことによって、ただちに「マルチスレッドでない = シングルスレッドである」ことは定まらないため、「シングルスレッドで共有メモリを同時に操作可能な実行主体が一つしか存在しない」ことは担保しえない
ミューテックスの要否は「共有メモリに対して複数の実行単位が論理的に同時アクセスしうるかどうか」で、「物理的に同時実行されない」ことは必ずしもメモリ安全性を意味しない
すなわちコア数(並列か否か)とマルチスレッドのいかんは別議論
並行処理の実現手段としてマルチスレッドを用いたならば、メモリ競合は生じるし、したがってミューテックスも要検討
重ねるけれど「シングルスレッドである」とする際に、それを前提するのが「並行処理である」からというのは因果の車がパンクしている
まず初手の等式がぶっ飛んでいる
並行、並列という処理の性質とその処理を実際に行う際に用いるモデルの話は直交概念、因果の幅跳び甚だしい
「並列でない」ことによって、ただちに「マルチスレッドでない = シングルスレッドである」ことは定まらないため、「シングルスレッドで共有メモリを同時に操作可能な実行主体が一つしか存在しない」ことは担保しえない
ミューテックスの要否は「共有メモリに対して複数の実行単位が論理的に同時アクセスしうるかどうか」で、「物理的に同時実行されない」ことは必ずしもメモリ安全性を意味しない
すなわちコア数(並列か否か)とマルチスレッドのいかんは別議論
並行処理の実現手段としてマルチスレッドを用いたならば、メモリ競合は生じるし、したがってミューテックスも要検討
重ねるけれど「シングルスレッドである」とする際に、それを前提するのが「並行処理である」からというのは因果の車がパンクしている
170デフォルトの名無しさん
2025/12/14(日) 07:46:26.10ID:xj54TDj4171デフォルトの名無しさん
2025/12/14(日) 08:13:24.71ID:fsdEVE/K172デフォルトの名無しさん
2025/12/14(日) 09:19:18.51ID:xj54TDj4 >>171
明確に前半後半で議論が分裂しているね
そして >>168 の指摘は前半の並行、並列、スレッド、競合、ミューテックスなどへの胡乱な認識に基づく主張、説明に対するもので、後半にて言及されてる「シングルスレッド」などに見られる条件下を前提としたケースについては触れていない
前半部分の指摘については既述のとおり
後半については指摘というより、並行、マルチスレッドなどの話で「Rustの話が出てこない」という反論かます時点で概念理解は推して知るべし
おそらく経験した個別ケースを安易に一般化してしまっており、自身の使っている用語が概念、実装、結果のどこに属しているか意識もあまりしていないのでは
だから乱暴な等式を使い、平気で一般化してしまう
Rust(tokioのexecutor)に見られる「設計上の制約(単一スレッドであることを保証)」は、「並行処理」一般とは議論のレイヤがズレている
そちらの議論に合わせるとすれば、spawn_localがmutex不要なのはexecutorが単一スレッドであることをtokioが保証しているからであり、「並行処理だから」が理由ではない
明確に前半後半で議論が分裂しているね
そして >>168 の指摘は前半の並行、並列、スレッド、競合、ミューテックスなどへの胡乱な認識に基づく主張、説明に対するもので、後半にて言及されてる「シングルスレッド」などに見られる条件下を前提としたケースについては触れていない
前半部分の指摘については既述のとおり
後半については指摘というより、並行、マルチスレッドなどの話で「Rustの話が出てこない」という反論かます時点で概念理解は推して知るべし
おそらく経験した個別ケースを安易に一般化してしまっており、自身の使っている用語が概念、実装、結果のどこに属しているか意識もあまりしていないのでは
だから乱暴な等式を使い、平気で一般化してしまう
Rust(tokioのexecutor)に見られる「設計上の制約(単一スレッドであることを保証)」は、「並行処理」一般とは議論のレイヤがズレている
そちらの議論に合わせるとすれば、spawn_localがmutex不要なのはexecutorが単一スレッドであることをtokioが保証しているからであり、「並行処理だから」が理由ではない
173デフォルトの名無しさん
2025/12/14(日) 09:48:55.96ID:44yyY/m/ >>172
非同期タスクで並行処理するためのランタイム基盤がRustのtokio
tokioでも並列処理をしない限り並行処理だけならばメモリ競合は発生しない
そのためミューテックスも当然必要ない
これは言語やランタイム基盤の種類に関係なく常に成立する
非同期タスクで並行処理するためのランタイム基盤がRustのtokio
tokioでも並列処理をしない限り並行処理だけならばメモリ競合は発生しない
そのためミューテックスも当然必要ない
これは言語やランタイム基盤の種類に関係なく常に成立する
174デフォルトの名無しさん
2025/12/14(日) 10:39:55.53ID:UGesTTaV 相変わらず複数データの排他制御を理解していない複おじ
175デフォルトの名無しさん
2025/12/14(日) 10:52:14.74ID:TOxv8/vf176デフォルトの名無しさん
2025/12/14(日) 11:11:39.26ID:7VXp8ta2 複数データの排他制御ってなんの話?
177デフォルトの名無しさん
2025/12/14(日) 13:10:49.83ID:O1BhnRhB LinuxついにRust公用語に
178デフォルトの名無しさん
2025/12/14(日) 14:04:43.97ID:xj54TDj4 >>173
だから安易な一般化
「並行処理 = 非同期処理」と認識してない?
そちらの主張はtokioをはじめ、その中においての業界標準、常識であって、外に出たら通用しない
「並行処理」におけるメモリ競合の有無やミューテックスの要否じゃなくて、それを実現する実装手段の内側世界における議論
それらを前提してるから、「並行処理 = シングルスレッド = 競合しない = ミューテックスは必要ない」と因果を逆立ちさせてしまう
>>157 のレスを引くなら「並行(非並列) = シングルスレッド = spawn_local = Sendがない」ではなく、「spawn_localを選ぶ = tokioがシングルスレッドであることを保証 = スレッド移動がないためSend不要 = 結果として並行(非並列)になる」が正しい因果
設計段階で「並列か否か」をまず決めて、それに応じたexecutorを選択し、その結果、実装者の期待どおりに「並行(非並列)」or「並列 & 並行」となるわけで
これが本来の思考、理解の順序であって、逆にするから概念自体が胡乱げになる
「非同期処理」に限るのであればいざ知らず、そうでないなら、つまり「並行処理」一般に議論のスコープを広げるのなら、そちらの因果理解は破綻する
だから安易な一般化
「並行処理 = 非同期処理」と認識してない?
そちらの主張はtokioをはじめ、その中においての業界標準、常識であって、外に出たら通用しない
「並行処理」におけるメモリ競合の有無やミューテックスの要否じゃなくて、それを実現する実装手段の内側世界における議論
それらを前提してるから、「並行処理 = シングルスレッド = 競合しない = ミューテックスは必要ない」と因果を逆立ちさせてしまう
>>157 のレスを引くなら「並行(非並列) = シングルスレッド = spawn_local = Sendがない」ではなく、「spawn_localを選ぶ = tokioがシングルスレッドであることを保証 = スレッド移動がないためSend不要 = 結果として並行(非並列)になる」が正しい因果
設計段階で「並列か否か」をまず決めて、それに応じたexecutorを選択し、その結果、実装者の期待どおりに「並行(非並列)」or「並列 & 並行」となるわけで
これが本来の思考、理解の順序であって、逆にするから概念自体が胡乱げになる
「非同期処理」に限るのであればいざ知らず、そうでないなら、つまり「並行処理」一般に議論のスコープを広げるのなら、そちらの因果理解は破綻する
179デフォルトの名無しさん
2025/12/14(日) 15:01:36.46ID:4LwbsUy1180デフォルトの名無しさん
2025/12/14(日) 16:05:54.67ID:+m3/RUXs もう並行処理専用スレを作って移動してほしい
181デフォルトの名無しさん
2025/12/14(日) 18:14:00.68ID:dzhQifsq 長文は読んでないが>>157の複おじの主張に沿うと
実行環境がシングルコアならマルチスレッドでもマルチプロセスでも真の並列ではないから
「カウンターやフラグなどあらゆる変数についてMutexを用いる必要がない」ってことだな
あほらし
実行環境がシングルコアならマルチスレッドでもマルチプロセスでも真の並列ではないから
「カウンターやフラグなどあらゆる変数についてMutexを用いる必要がない」ってことだな
あほらし
182デフォルトの名無しさん
2025/12/14(日) 18:21:41.85ID:dzhQifsq 今回得られた結論は以下の2つ
1. 「JavaScriptはシングルスレッドだから排他制御は要らない」などと言う人は排他制御を全く理解していないということ
2. 概念と実装の区別ができない人はその概念に対する理解が決定的に欠如しているということ
複オジ先生、反面教師役お疲れ様でした。
1. 「JavaScriptはシングルスレッドだから排他制御は要らない」などと言う人は排他制御を全く理解していないということ
2. 概念と実装の区別ができない人はその概念に対する理解が決定的に欠如しているということ
複オジ先生、反面教師役お疲れ様でした。
183デフォルトの名無しさん
2025/12/14(日) 18:51:23.07ID:zM6OZsQF 複おじは日下部陽一先生と知りあえば仲良くなれると思う
184デフォルトの名無しさん
2025/12/14(日) 19:19:56.69ID:mP2ZsAYG185デフォルトの名無しさん
2025/12/14(日) 21:37:57.47ID:tGd21ggn シングルスレッドだからメモリ競合は発生しないって主張が地雷なんだよな
複数の非同期処理で共有してる&Cell<T>の値はawaitの前後で書き換わってる可能性があって
await中の別処理での変更を無視するとマルチスレッドのメモリ競合と同じ不定状態になる
この場合シングルスレッドだからMutexは必要ないというより使えないんだけど
Mutexが必要ないor使えないからメモリ競合は存在しないって結論出すのはやめてほしい
変なタイミングでawaitを挟まなければ回避できる話だから大した問題ではないけど
問題の可能性を理解せずに「メモリ競合は存在しない」って信念を持たれるとこわい
複数の非同期処理で共有してる&Cell<T>の値はawaitの前後で書き換わってる可能性があって
await中の別処理での変更を無視するとマルチスレッドのメモリ競合と同じ不定状態になる
この場合シングルスレッドだからMutexは必要ないというより使えないんだけど
Mutexが必要ないor使えないからメモリ競合は存在しないって結論出すのはやめてほしい
変なタイミングでawaitを挟まなければ回避できる話だから大した問題ではないけど
問題の可能性を理解せずに「メモリ競合は存在しない」って信念を持たれるとこわい
186デフォルトの名無しさん
2025/12/14(日) 22:10:35.13ID:yhv8JhFY187デフォルトの名無しさん
2025/12/14(日) 22:37:59.93ID:xPG6+apI まーた副クン一人で頑張ってるの?
IDコロコロして頑張るねえ
IDコロコロして頑張るねえ
188デフォルトの名無しさん
2025/12/14(日) 22:56:57.21ID:j10MZCpM 複数CPUからの同時アクセスを制限するものだけを Mutex と呼ぶなら
tokio::sync::Mutex についてはどうなんだ?
これはシングルスレッドのランタイムでも使われるものだし、名前の通り Mutex と呼ばれるものの一種だと思うけど
tokio::sync::Mutex についてはどうなんだ?
これはシングルスレッドのランタイムでも使われるものだし、名前の通り Mutex と呼ばれるものの一種だと思うけど
189デフォルトの名無しさん
2025/12/14(日) 23:39:46.59ID:/lebwabc190デフォルトの名無しさん
2025/12/14(日) 23:49:39.40ID:TgyZENYv メモリ競合・データ競合は複数のスレッドもしくは複数のプロセスが互いにどこを実行している知らなくて制御できなかったり不意打ちで切り替わりえる状況で起きるんだよ
>>185
一方でそのケースはシングルスレッドで利用していればそんなことは起きないためデータ競合ではないね
awaitから戻ってきたら値が書き換わっていたというのは関数呼び出しの連鎖から戻ってきたら値が書き換わっていたのと同じようなこと
制御できない知らぬ間に値が書き換わるわけではないためデータ競合とは呼ばれない
>>185
一方でそのケースはシングルスレッドで利用していればそんなことは起きないためデータ競合ではないね
awaitから戻ってきたら値が書き換わっていたというのは関数呼び出しの連鎖から戻ってきたら値が書き換わっていたのと同じようなこと
制御できない知らぬ間に値が書き換わるわけではないためデータ競合とは呼ばれない
191デフォルトの名無しさん
2025/12/15(月) 10:37:47.15ID:NfYVjfv5 競合の話となると特に造語が捗るようですねえ
メモリ競合もそうだけど
データ参照の競合って何だったの?
https://mevius.5ch.net/test/read.cgi/tech/1722354386/966-983
メモリ競合もそうだけど
データ参照の競合って何だったの?
https://mevius.5ch.net/test/read.cgi/tech/1722354386/966-983
192デフォルトの名無しさん
2025/12/16(火) 00:58:10.28ID:W/QCw6TP さてと
linuxカーネルはrust化されないとか言ってた低学歴在日朝鮮人の恥ずかしい書き込みを発掘するか
linuxカーネルはrust化されないとか言ってた低学歴在日朝鮮人の恥ずかしい書き込みを発掘するか
193デフォルトの名無しさん
2025/12/16(火) 01:13:24.49ID:cIHp8Olv Linuxって使いにくい 古~いUnixを未だにひきずってるから
Linuxに拘る必要あるんだろうか?
もういっそのことすべてを新規設計にしてLinuxに代わるオープンソースOSにして欲しい
モデルにするのは…MSはMSで変に使いにくくしていってるとこあるから、この両者の悪所を全部取り除いたやつにして欲しい
Linuxに拘る必要あるんだろうか?
もういっそのことすべてを新規設計にしてLinuxに代わるオープンソースOSにして欲しい
モデルにするのは…MSはMSで変に使いにくくしていってるとこあるから、この両者の悪所を全部取り除いたやつにして欲しい
194デフォルトの名無しさん
2025/12/16(火) 01:14:30.50ID:mQYReazf 複おじみっともないからそういうのやめなって
195デフォルトの名無しさん
2025/12/16(火) 01:23:26.93ID:nHAkm4Ue 排他制御で恥を晒した某オジさんがいつものように別のネタで話題をそらしたいわけですね
196デフォルトの名無しさん
2025/12/16(火) 01:36:51.09ID:x/sZ4m7A197デフォルトの名無しさん
2025/12/16(火) 03:40:58.95ID:6mYT8Axt unix作者はgo作ったしlinuxメンテナに入れて上げたらinじゃねーの?
198デフォルトの名無しさん
2025/12/16(火) 04:03:56.34ID:W/QCw6TP >>196
s390とホビーじゃねえぞ
s390とホビーじゃねえぞ
199デフォルトの名無しさん
2025/12/16(火) 16:45:22.50ID:qwpCJpGr Qiitaスレに逃げてんじゃねーよ
200デフォルトの名無しさん
2025/12/16(火) 19:10:40.61ID:SqwmBjPQ201デフォルトの名無しさん
2025/12/16(火) 19:45:33.35ID:fxmzBDbu Go のランタイムがやってる平行処理 (goroutine) は本当は OS でやりたかったが Linux にかわる OS を作るのは非現実的だから諦めたとは聞いたことがあるな。
単純な話としてアプリケーションが Linux の仕様に依存しきっているから Linux のしがらみを捨てた新しい OS を作ったら全てのアプリケーションが作り直しだ。
インフラは正しくあることよりも安定していることが重要であるという Linux 哲学により、改善によって既存のアプリケーションが動かなくなるならその改善はしないことになっている。(深刻な脆弱性ならやむを得ず修正することはある。)
つまり Linux は長期的に安定してバイナリ互換性を維持していて、更にはこれからもそうであると信じられているから今の地位にあるってことだ。 Windows もそう。
機能・性能の良さより長期的な信頼が大事で、それを得るのは本当に困難な話。
単純な話としてアプリケーションが Linux の仕様に依存しきっているから Linux のしがらみを捨てた新しい OS を作ったら全てのアプリケーションが作り直しだ。
インフラは正しくあることよりも安定していることが重要であるという Linux 哲学により、改善によって既存のアプリケーションが動かなくなるならその改善はしないことになっている。(深刻な脆弱性ならやむを得ず修正することはある。)
つまり Linux は長期的に安定してバイナリ互換性を維持していて、更にはこれからもそうであると信じられているから今の地位にあるってことだ。 Windows もそう。
機能・性能の良さより長期的な信頼が大事で、それを得るのは本当に困難な話。
202デフォルトの名無しさん
2025/12/16(火) 20:04:03.07ID:VMokbSN7 新しいOSに引継ぎのためのWSLのようなのを積んじゃえば
203デフォルトの名無しさん
2025/12/16(火) 20:08:57.42ID:l9eOXZHT BeOSやTRONのようなのでもよかったんだけどなあ
BeOSはなぜかすぐに消えちゃったね、TRONはお国の事情で…
BeOSはなぜかすぐに消えちゃったね、TRONはお国の事情で…
204デフォルトの名無しさん
2025/12/16(火) 20:25:59.95ID:YnU0BKmn >>201
goroutineはプリエンプティブつまり強制中断スケジューリングなので個別にスタックを持たなければいけないけど
Rustの非同期タスクはawaitでスケジューリング切替なのでyield_now等で自分で制御できるメリットとスタックを持たなくていいメリットがあるね
goroutineはプリエンプティブつまり強制中断スケジューリングなので個別にスタックを持たなければいけないけど
Rustの非同期タスクはawaitでスケジューリング切替なのでyield_now等で自分で制御できるメリットとスタックを持たなくていいメリットがあるね
205デフォルトの名無しさん
2025/12/16(火) 20:51:19.88ID:r3w6sfJ0 おじはなんで188だけガン無視なの
206デフォルトの名無しさん
2025/12/16(火) 21:55:03.07ID:33G9TuJX もう敗北を認めてるからでしょ
207デフォルトの名無しさん
2025/12/16(火) 22:02:24.31ID:o613HmUP Rustに勝つのは無理すぎる
208デフォルトの名無しさん
2025/12/17(水) 00:04:52.78ID:BcBC1nAJ せっかくノリノリで自演再開したのに蒸し返された途端に止まるの笑える
209デフォルトの名無しさん
2025/12/17(水) 00:05:33.31ID:IQqRXVk7 どういう指標において?
例えば「開発者の人口の多さ」なら主要言語の中では下位だし、そんなもの切り口によりけりだろ
例えば「開発者の人口の多さ」なら主要言語の中では下位だし、そんなもの切り口によりけりだろ
210デフォルトの名無しさん
2025/12/17(水) 00:37:34.86ID:9IMomu8g tronはスウィッチ2のコントローラで活躍しとるでぇ🧐
211デフォルトの名無しさん
2025/12/17(水) 09:00:54.55ID:XKSP57jx 活躍ではないかな
212デフォルトの名無しさん
2025/12/17(水) 13:00:34.90ID:ZnlCz4EL NeXTは死にかけのところをあやうく拾って貰えた
BeOSの方がmac後継の有力候補とまで言われていたのに
ここまで立場がひっくり返るとは
BeOSの方がmac後継の有力候補とまで言われていたのに
ここまで立場がひっくり返るとは
213デフォルトの名無しさん
2025/12/17(水) 13:20:26.44ID:DM2ngHpZ マイナーアーキテクチャ対応はgccrsプロジェクトの成否にかかってると思うんだが
現状どうなってるの?
現状どうなってるの?
214デフォルトの名無しさん
2025/12/17(水) 14:23:26.87ID:t+T8cWGp そんなもんお荷物になるだけだから失敗してくれた方がいい
最新エディションへの対応が遅れる(or放棄される)のは目に見えていて、
ライブラリがそれに引きずられて最新エディションへの移行を渋るようになれば、
俺達イケイケ最先端ウェーイでやってきたRustコミュニティの自尊心に致命的なダメージを与え、開発者離れを引き起こすことになりかねない
最新エディションへの対応が遅れる(or放棄される)のは目に見えていて、
ライブラリがそれに引きずられて最新エディションへの移行を渋るようになれば、
俺達イケイケ最先端ウェーイでやってきたRustコミュニティの自尊心に致命的なダメージを与え、開発者離れを引き起こすことになりかねない
215デフォルトの名無しさん
2025/12/17(水) 16:13:18.06ID:0zsY87I/ アーキテクチャのLLVM対応はベンダーorメーカーの責任では
売りたいなら真っ先に用意するだろうし時代遅れでコストに見合わなければ切り捨てられる
売りたいなら真っ先に用意するだろうし時代遅れでコストに見合わなければ切り捨てられる
216デフォルトの名無しさん
2025/12/17(水) 19:33:27.44ID:ujCMDiXv というかgcc対応の本命はrustc_codegen_gccの方じゃない?
最近はRust本体のCIでもテストされるようになってきたし、rustupでの配布も計画されている
最近はRust本体のCIでもテストされるようになってきたし、rustupでの配布も計画されている
217デフォルトの名無しさん
2025/12/17(水) 20:42:52.22ID:DzI4E+Zk218デフォルトの名無しさん
2025/12/17(水) 22:06:20.53ID:IQqRXVk7 bincode がサポート終了になったみたい
それなりに広く使われてるクレートでも突如消えることってあるんだな、と改めて思う…
それなりに広く使われてるクレートでも突如消えることってあるんだな、と改めて思う…
219デフォルトの名無しさん
2025/12/17(水) 22:27:57.16ID:GIcNPYi1 メンテナの一人が他のメンテナに相談なく脱GitHub作業を始めて履歴の書き換えとかをやりだして揉めたけど
その渦中のメンテナがトランスジェンダーのポリコレだってことで
実名と住所を晒されて、責任取ってプロジェクト自体終わりってことになったのか
その渦中のメンテナがトランスジェンダーのポリコレだってことで
実名と住所を晒されて、責任取ってプロジェクト自体終わりってことになったのか
220デフォルトの名無しさん
2025/12/17(水) 22:29:06.78ID:JJtTc48Y devでtestで用いてるクレートが多いな
221デフォルトの名無しさん
2025/12/17(水) 22:31:21.65ID:WBnWSF9Z >>217
rustc_codegen_gccがお荷物になってライブラリではなくてRust本体への変更が遅れるデメリットはある
rustc_codegen_gccがお荷物になってライブラリではなくてRust本体への変更が遅れるデメリットはある
222デフォルトの名無しさん
2025/12/17(水) 22:55:48.90ID:7H2QU0IP そこはこれまでもrustcとLLVMとの間の調整でやって来たことだから新たな影響は限りなく小さい
一方でRustの仕様追加変更や標準ライブラリの追加安定化などは当面rustcまわりでの独裁決定事項であることが成長中のRustにとって好ましい
一方でRustの仕様追加変更や標準ライブラリの追加安定化などは当面rustcまわりでの独裁決定事項であることが成長中のRustにとって好ましい
223デフォルトの名無しさん
2025/12/17(水) 23:05:52.77ID:pnFaSaz7 bincodeの件、斜め読みしたけど、こんな感じじゃない?
1. 生成AIのクソissueにブチ切れる
2. 脱GitHubを実行
3. ついでに、トランスジェンダーの関係で改名した新しい名前を使って過去のコミットを書き換える
4. しばらく誰も気づかない
5. 誰かがコミットIDが書き変わってることに気づく
6. うわーサプライチェーン攻撃だーと大騒ぎする
7. 騒ぎの中で、作者の実名や住所を公開する奴が現れる
8. 作者がブチ切れて、メンテナンス終了を宣言
9. ついでに、作者名の欄を独立して編集できないcrates.ioがクソ、と意見
1. 生成AIのクソissueにブチ切れる
2. 脱GitHubを実行
3. ついでに、トランスジェンダーの関係で改名した新しい名前を使って過去のコミットを書き換える
4. しばらく誰も気づかない
5. 誰かがコミットIDが書き変わってることに気づく
6. うわーサプライチェーン攻撃だーと大騒ぎする
7. 騒ぎの中で、作者の実名や住所を公開する奴が現れる
8. 作者がブチ切れて、メンテナンス終了を宣言
9. ついでに、作者名の欄を独立して編集できないcrates.ioがクソ、と意見
224デフォルトの名無しさん
2025/12/18(木) 00:40:08.71ID:SXyMexjv225デフォルトの名無しさん
2025/12/18(木) 12:26:48.37ID:nouCCsxV ハッシュマップってハッシュ値を保持して値を調べるんじゃなくてキーも保存するんだな
保存したくない場合はキーを完全ハッシュ値にしてハッシュ値をキーにしないとだめだな
保存したくない場合はキーを完全ハッシュ値にしてハッシュ値をキーにしないとだめだな
226デフォルトの名無しさん
2025/12/18(木) 13:24:31.83ID:CQ9HORaM キーを保存したくないならHashSetの方があってそう
値にEqが必要だけど完全ハッシュより現実的
値にEqが必要だけど完全ハッシュより現実的
227デフォルトの名無しさん
2025/12/18(木) 14:39:08.80ID:XpyRX9NB 恐ろしい誤解だなと眺めてたら
さらに恐ろしいのが来た
さらに恐ろしいのが来た
228デフォルトの名無しさん
2025/12/18(木) 15:01:44.44ID:MGFN0lYz229デフォルトの名無しさん
2025/12/18(木) 15:07:04.67ID:CQ9HORaM この場合のキーはHashMap<K, V>のKのことだろ
HashSet<T>のキーってなんだよ
ハッシュ値のこと?
HashSet<T>のキーってなんだよ
ハッシュ値のこと?
230デフォルトの名無しさん
2025/12/18(木) 16:23:43.15ID:VAIdWToM 検索に使うオブジェクトがキー。
HashSet は値が常に () であるような HashMap だと説明されてる。
HashSet は値が常に () であるような HashMap だと説明されてる。
231デフォルトの名無しさん
2025/12/18(木) 16:51:07.77ID:nouCCsxV 普通のハッシュマップは何もしないハッシャーを実装すれば出来るな
232デフォルトの名無しさん
2025/12/18(木) 19:13:42.74ID:fm5KR8ce Rustの前に基本情報あたりを取る勉強したほうがいいんじゃないか
古臭いのが多いとはいえ応用は基礎の積み重ねの上にあるからな
古臭いのが多いとはいえ応用は基礎の積み重ねの上にあるからな
233デフォルトの名無しさん
2025/12/18(木) 19:42:58.02ID:Wqs3m317 rustってグローバル変数が使えないんだよね。dfsつらくない?
234デフォルトの名無しさん
2025/12/18(木) 19:46:33.16ID:vUWlsjsI DFSのためにグローバル変数??
プログラミングを基礎からやり直したほうがいいぞ
プログラミングを基礎からやり直したほうがいいぞ
235デフォルトの名無しさん
2025/12/19(金) 10:28:35.58ID:gzseDVjE Rustちょっとビルドの度に数分単位の時間掛かるのなんとかならんのかね
多分プロダクションビルドだけでやればいいような最適化とか毎回回してるよねこれ
多分プロダクションビルドだけでやればいいような最適化とか毎回回してるよねこれ
236デフォルトの名無しさん
2025/12/19(金) 10:31:57.30ID:+3c/moZi >>235
マクロのせいでしょ
マクロのせいでしょ
237デフォルトの名無しさん
2025/12/19(金) 12:08:39.25ID:PZAfhfPm でかい依存ライブラリのリビルドが必要になったならまだしも自分のコードのインクリメンタルビルドだけで数分もかかるようならマシンのアップグレードを検討したほうがいいかもしれない
238デフォルトの名無しさん
2025/12/19(金) 12:10:44.45ID:AoLX/WrE Windowsならアンチウイルスのせいかもね
239デフォルトの名無しさん
2025/12/19(金) 12:20:12.19ID:HjsWPX9f >>235
少なくともデバッグビルドのデフォルト設定では最適化は控えめだよ。
単純にリンクが遅い傾向にある。
Rust プロジェクトの典型的な設計がリンカには負担がかかってしまう要素が多いらしい。
変更が少しだけでもリンカの仕事の量は特に変わらないし。
インクリメンタルリンクをサポートしたリンカ Wild が開発中で、開発中のリンク (修正を少しだけした場合のリンクしなおし) を爆速にする計画は進んでいる。
インクリメンタルリンクは構造がかなり複雑になるので複雑な処理と速度を両立できるのか疑問視されていて従来のリンカ開発者は消極的だったんだが
Rust でなら複雑さと性能を両立したリンカを書けるという自信があるらしい。
少なくともデバッグビルドのデフォルト設定では最適化は控えめだよ。
単純にリンクが遅い傾向にある。
Rust プロジェクトの典型的な設計がリンカには負担がかかってしまう要素が多いらしい。
変更が少しだけでもリンカの仕事の量は特に変わらないし。
インクリメンタルリンクをサポートしたリンカ Wild が開発中で、開発中のリンク (修正を少しだけした場合のリンクしなおし) を爆速にする計画は進んでいる。
インクリメンタルリンクは構造がかなり複雑になるので複雑な処理と速度を両立できるのか疑問視されていて従来のリンカ開発者は消極的だったんだが
Rust でなら複雑さと性能を両立したリンカを書けるという自信があるらしい。
240デフォルトの名無しさん
2025/12/19(金) 12:24:59.93ID:AoLX/WrE C#みたいにプロセス起動したままホットリロードできるようになるのはいつ?
241デフォルトの名無しさん
2025/12/19(金) 13:38:24.83ID:uPPpqdRm ビルドする時間帯によっては依存cratesの更新確認だけで待たされる時があるな
242デフォルトの名無しさん
2025/12/19(金) 14:18:19.55ID:XFk/dn+M >>241
その仕組みのない言語はやばい
その仕組みのない言語はやばい
243デフォルトの名無しさん
2025/12/19(金) 14:24:27.94ID:LTe4LjTR Rust はシングルバイナリ指向なのでホットリロードは想定してないがバイナリを分割すれば (ホスト環境によっては) 今でもホットリロードできる。
実行環境次第。
実行環境次第。
244デフォルトの名無しさん
2025/12/19(金) 23:23:49.86ID:kouENYLZ ホットリロードが欲しいのはGUIみたいに「ちょっと変えて試す」をしたい分野だと思う
それはRustの得意分野でもないし、そこはC#やJSで良いじゃない
Rustが向く分野とそうでない分野があるというだけの話
それはRustの得意分野でもないし、そこはC#やJSで良いじゃない
Rustが向く分野とそうでない分野があるというだけの話
245デフォルトの名無しさん
2025/12/20(土) 06:57:23.96ID:z+uDpZnV ホットリロードはWEB APIにこそ欲しい
246デフォルトの名無しさん
2025/12/20(土) 09:53:03.44ID:IOYr4f7F247デフォルトの名無しさん
2025/12/20(土) 09:54:12.80ID:IOYr4f7F >>243
その仕組みのないOSはやばい
その仕組みのないOSはやばい
248デフォルトの名無しさん
2025/12/20(土) 10:06:31.65ID:cXl/wOeV 明示的にアップデート指定した時以外はイチイチ外部パッケージのダウンロード&再コンパイルとかやらないで欲しいな
249デフォルトの名無しさん
2025/12/20(土) 13:27:35.26ID:Hio2Ii0f >>248
クレイト使用バージョンを指定してないからでは
クレイト使用バージョンを指定してないからでは
250デフォルトの名無しさん
2025/12/21(日) 13:34:39.31ID:i93tKLa3 hoge = "1.2.3"
よりも
hoge = ">=1.2.3"
よりも
hoge = "=1.2.3"
推奨ですね判ります
よりも
hoge = ">=1.2.3"
よりも
hoge = "=1.2.3"
推奨ですね判ります
251デフォルトの名無しさん
2025/12/21(日) 14:35:21.91ID:d7uL0Tpm Microsoft、2030年までにC/C++廃止を目指す
https://softantenna.com/blog/microsoft-c-to-rust-2030/
> 私の目標は、2030年までに Microsoft から すべての C と C++ のコードを排除することです。そのための戦略は、AI と アルゴリズムを組み合わせて、Microsoft が抱える最大規模のコードベースを書き換えることにあります。
> マイクロソフトの大規模C/C++システムをRustへ移行する
https://softantenna.com/blog/microsoft-c-to-rust-2030/
> 私の目標は、2030年までに Microsoft から すべての C と C++ のコードを排除することです。そのための戦略は、AI と アルゴリズムを組み合わせて、Microsoft が抱える最大規模のコードベースを書き換えることにあります。
> マイクロソフトの大規模C/C++システムをRustへ移行する
252デフォルトの名無しさん
2025/12/21(日) 14:43:34.11ID:e/+WNu6S マイクロソフトに限らず2030年代にはどの企業でもC/C++全廃してるでしょ
253デフォルトの名無しさん
2025/12/21(日) 14:48:05.86ID:hsTPvwMv254デフォルトの名無しさん
2025/12/21(日) 15:03:43.26ID:d7uL0Tpm お前らもExcelのマクロをRustで書きたいだろ?
255デフォルトの名無しさん
2025/12/21(日) 15:07:17.98ID:98VUfdyA 1ヶ月で1人あたり100万行のC/C++コードのRust化って
コーディングもレビューもテストすらAI丸投げで
誰も確認しない感じじゃないと不可能だよなあ
コーディングもレビューもテストすらAI丸投げで
誰も確認しない感じじゃないと不可能だよなあ
256デフォルトの名無しさん
2025/12/21(日) 15:15:34.65ID:hsTPvwMv 実際にはWindowsをRustで書き換えるんじゃなくてWindows付属のアプリケーションをRustに置き換えていくんじゃないかな
人を集めるために大きいことを言ってるんだと思うよ
人を集めるために大きいことを言ってるんだと思うよ
257デフォルトの名無しさん
2025/12/21(日) 19:17:27.17ID:6kD7Dv0I そりゃ Rust のほうが良いとは思うが書き換えとなると書き換えに伴って発生するバグだってあるし、十分に安定している部分まで慌てて書き換える合理性がない
258デフォルトの名無しさん
2025/12/21(日) 19:46:26.13ID:IIR4jOxl そう言ってるわりにVisualStudio2026でRust対応しなかったよな
結構くるんじゃないかって期待してたんだけど
結構くるんじゃないかって期待してたんだけど
259デフォルトの名無しさん
2025/12/21(日) 20:27:44.41ID:tmQfSAVe Rustに書き換えたところで何かが改善されたというアピールがしにくいんだよね
速くなろうがエラーがへろうがそれが置き換えによるものなのかって切り分けにくいだろうし
速くなろうがエラーがへろうがそれが置き換えによるものなのかって切り分けにくいだろうし
260デフォルトの名無しさん
2025/12/21(日) 20:28:25.69ID:98VUfdyA 何かRustコンパイラをMSが自作する必要に迫らればVisual Studio入りもあるだろうけど
結局rustcとrust-analyzer頼みならVsCodeでいいじゃんで終わりそう
結局rustcとrust-analyzer頼みならVsCodeでいいじゃんで終わりそう
261デフォルトの名無しさん
2025/12/21(日) 21:38:22.40ID:rFkT0lPT 処理系が少ないのは健全な状態ではないからマイクロソフトにも手をつけてほしいが、現時点では Rust の言語仕様の文書化があまり進んでないからな……。
https://github.com/rust-lang/spec
リファレンスマニュアルだけで十分に互換性のある処理系を作れるとは思えないし、やるにしても時期尚早かもしれない。
https://github.com/rust-lang/spec
リファレンスマニュアルだけで十分に互換性のある処理系を作れるとは思えないし、やるにしても時期尚早かもしれない。
262デフォルトの名無しさん
2025/12/21(日) 23:07:13.70ID:C3ZUpqyk vsてcodeの劣化版でしかないのにあれをまだ使ってる人おるんかな
263デフォルトの名無しさん
2025/12/22(月) 00:13:44.16ID:uNe3sTke >>262
VSをエディタとしてしか使ったことないんか?
VSをエディタとしてしか使ったことないんか?
264デフォルトの名無しさん
2025/12/22(月) 00:37:10.74ID:iYFUOh50 バルマー時代のMSならいざ知らず、今のMSが今更わざわざWindows専用の新しいツールチェインなんか作るわけないでしょ
265デフォルトの名無しさん
2025/12/22(月) 08:42:53.10ID:Isn+IeYn Arm版Windowsなら可能性あるかもね。
x86windowsは過去互換性が重要だから互換層をたくさん用意する必要がある。互換層はunsafeまみれでpanicリスクのあるコードになるから、Rustの強みは活かせないだろうね。
x86windowsは過去互換性が重要だから互換層をたくさん用意する必要がある。互換層はunsafeまみれでpanicリスクのあるコードになるから、Rustの強みは活かせないだろうね。
266デフォルトの名無しさん
2025/12/22(月) 19:42:03.81ID:XqGhCp2+ Arm版もどっこいかな
結局Rustが使われるとしたらシステムよりもアプリケーションだろうね
結局Rustが使われるとしたらシステムよりもアプリケーションだろうね
267デフォルトの名無しさん
2025/12/23(火) 12:53:56.12ID:vOZ/ptL9 Visual R++やぞ
268デフォルトの名無しさん
2025/12/23(火) 13:01:38.27ID:i9POOTwU VSやVCそのものがRustで書かれるのは歓迎だがR++は要らん
そもそもRと間違われるやろ
そもそもRと間違われるやろ
269デフォルトの名無しさん
2025/12/23(火) 13:04:27.56ID:i9POOTwU270デフォルトの名無しさん
2025/12/23(火) 13:34:24.10ID:9R8+7Wf/ >>267
統計に強くなりそう
統計に強くなりそう
271デフォルトの名無しさん
2025/12/23(火) 15:32:55.55ID:tnsGp2Dc >>265,266
Windowsは内部からAPIまで循環参照だらけ
Windowsは内部からAPIまで循環参照だらけ
272デフォルトの名無しさん
2025/12/23(火) 16:27:59.29ID:DbmUHxXE windowsたまに使うとずっとディスクアクセスしててこわい
273デフォルトの名無しさん
2025/12/24(水) 11:55:02.84ID:altwASQJ SSDの寿命あっという間
274L0A5197αβ0697891011121314151617181920
2025/12/24(水) 12:44:26.15ID:fn5QTi1I パソコン、機械のブラック20とそれ以降代入の自動設定プログラムオートセットコード20について
プログラムセットオートコード20
ダイダロディクス20
これがおおざっぱにいって船や重工業用機械向け
プログラムセットオートコード20
バイバロニック20
これがおおざっぱにいってパソコンや家庭用軽機械向け
プログラムセットオートコード20図
左上に船や機械の名前、中央に船の概略図、右下にブラック20とダイダロディックス20
、バイバロニック20などの名前、左下にその船や機械の状態。
パソコンや機械を作る場合は正しく、確認するように。
プログラムセットオートコード20
ダイダロディクス20
これがおおざっぱにいって船や重工業用機械向け
プログラムセットオートコード20
バイバロニック20
これがおおざっぱにいってパソコンや家庭用軽機械向け
プログラムセットオートコード20図
左上に船や機械の名前、中央に船の概略図、右下にブラック20とダイダロディックス20
、バイバロニック20などの名前、左下にその船や機械の状態。
パソコンや機械を作る場合は正しく、確認するように。
275機械の基本プログラムセットオートコード20図
2025/12/24(水) 12:44:39.28ID:fn5QTi1I パソコン、機械のブラック20とそれ以降代入の自動設定プログラムオートセットコード20について
プログラムセットオートコード20
ダイダロディクス20
これがおおざっぱにいって船や重工業用機械向け
プログラムセットオートコード20
バイバロニック20
これがおおざっぱにいってパソコンや家庭用軽機械向け
プログラムセットオートコード20図
左上に船や機械の名前、中央に船の概略図、右下にブラック20とダイダロディックス20
、バイバロニック20などの名前、左下にその船や機械の状態。
パソコンや機械を作る場合は正しく、確認するように。
プログラムセットオートコード20
ダイダロディクス20
これがおおざっぱにいって船や重工業用機械向け
プログラムセットオートコード20
バイバロニック20
これがおおざっぱにいってパソコンや家庭用軽機械向け
プログラムセットオートコード20図
左上に船や機械の名前、中央に船の概略図、右下にブラック20とダイダロディックス20
、バイバロニック20などの名前、左下にその船や機械の状態。
パソコンや機械を作る場合は正しく、確認するように。
276デフォルトの名無しさん
2025/12/25(木) 09:47:46.29ID:vIZfTBKk 引用
>>あなたはマイクロソフトのことを全く知らないようですね。
マイクロソフトは互いに憎み合うサイロ化されたチームで構成されているんです。
ジェフリー・スノーバーは、解雇の危機を覚悟でPowerShellとWindows Server Coreを発明しないよう警告されました。
しかし、解雇されたわけではなく、降格させられました。
彼はテクニカルフェロー(Microsoft最高位)まで這い上がりましたが、Windowsチームは抵抗し、
PowerShell 5.1以降のバージョンは統合されませんでした。
スノーバーは2022年にMicrosoftを去りました。他に誰がMicrosoftを去ったかご存知ですか?
マーク・ルコフスキー(バルマー氏の椅子投げ事件の犯人)と
ニールス・ファーガソン(21年間Microsoftに勤務。
英国内務省がBitLockerにバックドアを要求した際、「死んでも構わない」と断言しました!彼はまだ生きています。)
ハントより上位の人物は既にマイクロソフトを去り、彼らのビジョンは実現されていない。
今、この世間知らずの成り上がり者は、マイクロソフトで最も古く、最も実績のあるコードをRustに移植しようとしている!
一体何のために?誰かがRustを神聖視しているのだ。
取締役会は、彼のプロジェクトの費用と利益の少なさを目の当たりにし、次の決算説明会で彼を解任するだろう。
>これがMS帝国ってわけ
言語もフレームワークも開発環境もぜーんぶ縦割り行政のお役所仕事で、縄張りと予算を奪い合う派閥争いを
延々と繰り広げてるんだからそりゃうまくいくわけねーわなwww
>>あなたはマイクロソフトのことを全く知らないようですね。
マイクロソフトは互いに憎み合うサイロ化されたチームで構成されているんです。
ジェフリー・スノーバーは、解雇の危機を覚悟でPowerShellとWindows Server Coreを発明しないよう警告されました。
しかし、解雇されたわけではなく、降格させられました。
彼はテクニカルフェロー(Microsoft最高位)まで這い上がりましたが、Windowsチームは抵抗し、
PowerShell 5.1以降のバージョンは統合されませんでした。
スノーバーは2022年にMicrosoftを去りました。他に誰がMicrosoftを去ったかご存知ですか?
マーク・ルコフスキー(バルマー氏の椅子投げ事件の犯人)と
ニールス・ファーガソン(21年間Microsoftに勤務。
英国内務省がBitLockerにバックドアを要求した際、「死んでも構わない」と断言しました!彼はまだ生きています。)
ハントより上位の人物は既にマイクロソフトを去り、彼らのビジョンは実現されていない。
今、この世間知らずの成り上がり者は、マイクロソフトで最も古く、最も実績のあるコードをRustに移植しようとしている!
一体何のために?誰かがRustを神聖視しているのだ。
取締役会は、彼のプロジェクトの費用と利益の少なさを目の当たりにし、次の決算説明会で彼を解任するだろう。
>これがMS帝国ってわけ
言語もフレームワークも開発環境もぜーんぶ縦割り行政のお役所仕事で、縄張りと予算を奪い合う派閥争いを
延々と繰り広げてるんだからそりゃうまくいくわけねーわなwww
277デフォルトの名無しさん
2025/12/25(木) 12:11:31.56ID:3vI78U2I Hunt本人は火消し中
何の基幹決定もなくこれまで通りで、ただのポジショントーク
Update:
It appears my post generated far more attention than I
intended... with a lot of speculative reading between the
lines.
Just to clarify... Windows is *NOT* being rewritten in Rust
with Al.
My team's project is a research project. We are building
tech to make migration from language to language
possible. The intent of my post was to find like-minded
engineers to join us on the next stage of this multi-year
endeavor—not to set a new strategy for Windows 11+ or to
imply that Rust is an endpoint.
何の基幹決定もなくこれまで通りで、ただのポジショントーク
Update:
It appears my post generated far more attention than I
intended... with a lot of speculative reading between the
lines.
Just to clarify... Windows is *NOT* being rewritten in Rust
with Al.
My team's project is a research project. We are building
tech to make migration from language to language
possible. The intent of my post was to find like-minded
engineers to join us on the next stage of this multi-year
endeavor—not to set a new strategy for Windows 11+ or to
imply that Rust is an endpoint.
278デフォルトの名無しさん
2025/12/25(木) 12:14:43.08ID:I/NtKhmL 自由な社風なんだね
279デフォルトの名無しさん
2025/12/25(木) 12:26:28.91ID:lBuc32NG 米国の企業文化として、個人の責任においての情報発信については比較的寛容な傾向がある
SmartHRのチンパンジー事件みたいなポリコレ的にヤバいのは一発で首が飛ぶだろうが
SmartHRのチンパンジー事件みたいなポリコレ的にヤバいのは一発で首が飛ぶだろうが
280デフォルトの名無しさん
2025/12/25(木) 12:39:21.55ID:FNC9JE1x この図式か
https://i.imgur.com/NZEBKEV.jpeg
https://i.imgur.com/bvrIEQc.jpeg
https://i.imgur.com/3sUSVIT.jpeg
https://i.imgur.com/r8o0gWD.jpeg
https://i.imgur.com/4fA7gcc.jpeg
https://i.imgur.com/NUVsnuR.jpeg
https://i.imgur.com/gNP6w6m.jpeg
https://i.imgur.com/8XSGI4Y.jpeg
https://i.imgur.com/hpvnSsA.jpeg
https://i.imgur.com/k7xHbKl.jpeg
https://i.imgur.com/Mj7BIOO.jpeg
https://i.imgur.com/Jf0KYfG.jpeg
https://i.imgur.com/nW3JL7o.jpeg
https://i.imgur.com/8Q9YYgW.jpeg
https://i.imgur.com/NZEBKEV.jpeg
https://i.imgur.com/bvrIEQc.jpeg
https://i.imgur.com/3sUSVIT.jpeg
https://i.imgur.com/r8o0gWD.jpeg
https://i.imgur.com/4fA7gcc.jpeg
https://i.imgur.com/NUVsnuR.jpeg
https://i.imgur.com/gNP6w6m.jpeg
https://i.imgur.com/8XSGI4Y.jpeg
https://i.imgur.com/hpvnSsA.jpeg
https://i.imgur.com/k7xHbKl.jpeg
https://i.imgur.com/Mj7BIOO.jpeg
https://i.imgur.com/Jf0KYfG.jpeg
https://i.imgur.com/nW3JL7o.jpeg
https://i.imgur.com/8Q9YYgW.jpeg
281デフォルトの名無しさん
2025/12/25(木) 12:43:41.79ID:FNC9JE1x282デフォルトの名無しさん
2025/12/25(木) 19:19:26.55ID:HxAnIlv2 windows クレートを使ってプログラムを書こうとすると VSCode (とやり取りする rust-analyzer) が型を導出するのに失敗するらしくことごとく ! と表示される。
rust-analyzer の限界っぽいのでこれは現時点ではどうにもならないもんなの?
型がわからないとメソッドの補完も駄目だから結構きついんだけど。
rust-analyzer の限界っぽいのでこれは現時点ではどうにもならないもんなの?
型がわからないとメソッドの補完も駄目だから結構きついんだけど。
283デフォルトの名無しさん
2025/12/25(木) 20:58:07.37ID:ds4E6ToN >>282
標準ライブラリの std::os::windows と競合してる可能性がある
もしソースコードの先頭に use std::os::windows と書いてあるなら、それを外してからコードを書き直してみると良いかも
インテリセンスは両方を提示してくるから、windowsクレートの方を選んで tab キーを押す
(そうしないとファイル先頭に自動的に use std::os::windows が自動挿入されることがある)
他の可能性として、 windows クレートを追加した時にフィーチャーフラグを指定してない場合は、中身がほぼ何も無いためにインテリセンスが効かない可能性があるかも
公式のドキュメントを読んで、使いたい機能に応じたフィーチャー (例. Win32_Foundation) を有効化する必要がある
かなり細かく分かれてるので注意
標準ライブラリの std::os::windows と競合してる可能性がある
もしソースコードの先頭に use std::os::windows と書いてあるなら、それを外してからコードを書き直してみると良いかも
インテリセンスは両方を提示してくるから、windowsクレートの方を選んで tab キーを押す
(そうしないとファイル先頭に自動的に use std::os::windows が自動挿入されることがある)
他の可能性として、 windows クレートを追加した時にフィーチャーフラグを指定してない場合は、中身がほぼ何も無いためにインテリセンスが効かない可能性があるかも
公式のドキュメントを読んで、使いたい機能に応じたフィーチャー (例. Win32_Foundation) を有効化する必要がある
かなり細かく分かれてるので注意
284デフォルトの名無しさん
2025/12/26(金) 08:05:04.05ID:mERYJOvF webフレってactixとaxumがスター数いっしょだけどどっちがいいの?まだデファクトはない感じなんかな
goのwebフレ触ったあとこれやるとdieselとか書くのめんどすぎ
goのwebフレ触ったあとこれやるとdieselとか書くのめんどすぎ
285デフォルトの名無しさん
2025/12/26(金) 08:19:45.55ID:lQfYBV4w tauriでええんでね?
286デフォルトの名無しさん
2025/12/26(金) 08:51:12.70ID:NrYXUhUz287デフォルトの名無しさん
2025/12/26(金) 09:21:39.87ID:7J4cl2vF >>283
ありがとう。
cargo build は可能な状態なのでそのへんの指定がおかしいということはないはず。
色々と調査したところ rustup で入れたツールチェインと msys2 上に pacman で入れたツールチェインが競合してたことが発覚した……。
環境を分けたつもりだったけど失敗してた。
ありがとう。
cargo build は可能な状態なのでそのへんの指定がおかしいということはないはず。
色々と調査したところ rustup で入れたツールチェインと msys2 上に pacman で入れたツールチェインが競合してたことが発覚した……。
環境を分けたつもりだったけど失敗してた。
288デフォルトの名無しさん
2025/12/26(金) 09:24:17.47ID:rahjlNj2 >>284
老舗のactixが本流tokioによる新参axumに追いつかれた状況
actixを既に気に入ってる人を除けば今後はaxumでいいかと
dieselは同期で使うものなのでspawn_blockingなどでくるむしかないね
ORMなdieselより非同期対応のSQLxを使う人多いかな
老舗のactixが本流tokioによる新参axumに追いつかれた状況
actixを既に気に入ってる人を除けば今後はaxumでいいかと
dieselは同期で使うものなのでspawn_blockingなどでくるむしかないね
ORMなdieselより非同期対応のSQLxを使う人多いかな
289デフォルトの名無しさん
2025/12/26(金) 09:45:28.39ID:Q1XhIw8Y UAVCANプロトコルのクレイトがあると思ってサイト見てみたらダメダメやね。
ドローンの仕事が増えてきたので、この辺のクレイトはしっかりしてほしい。
プロトコルもV1.5から8年間更新されていないし、たく さぼり過ぎ。
仕方ない。 俺がやるか。
ドローンの仕事が増えてきたので、この辺のクレイトはしっかりしてほしい。
プロトコルもV1.5から8年間更新されていないし、たく さぼり過ぎ。
仕方ない。 俺がやるか。
290デフォルトの名無しさん
2025/12/26(金) 11:28:03.13ID:wt0q59Jx ああ、Rustが覇権してまうw
Windows 11、C/C++を全面撤廃しRust化 - Microsoftが全社で移行
掲載日 2025/12/25 10:05
https://news.mynavi.jp/techplus/article/20251225-3860427/
Windows 11、C/C++を全面撤廃しRust化 - Microsoftが全社で移行
掲載日 2025/12/25 10:05
https://news.mynavi.jp/techplus/article/20251225-3860427/
291デフォルトの名無しさん
2025/12/26(金) 11:34:59.55ID:cEFmossf むしろマイナスプロモーションでは
292デフォルトの名無しさん
2025/12/26(金) 13:14:50.63ID:agHTQkEW マジレスすると周回遅れ
293デフォルトの名無しさん
2025/12/26(金) 14:52:34.43ID:7J4cl2vF Windows クレートのドキュメントで検索機能を使おうとすると滅茶苦茶に重くて固まるんだがどうにかならんの?
あまりにも重すぎるので Zeal で使える形式にすることも検討してるんだけど ChatGPT が述べるところによれば Zeal でも非現実的な大きさなので
分割するとかでどうにかするしかないのだそう。
みんなどうやってる?
あまりにも重すぎるので Zeal で使える形式にすることも検討してるんだけど ChatGPT が述べるところによれば Zeal でも非現実的な大きさなので
分割するとかでどうにかするしかないのだそう。
みんなどうやってる?
294デフォルトの名無しさん
2025/12/26(金) 15:30:04.17ID:agHTQkEW 不必要なfeatureを描かない
必要ならfeature毎にcrate分ける
必要ならfeature毎にcrate分ける
295デフォルトの名無しさん
2025/12/26(金) 17:32:47.40ID:GUxbqEJo296デフォルトの名無しさん
2025/12/26(金) 19:47:51.14ID:7J4cl2vF そういう場当たり的な方法でやってんのね……
297デフォルトの名無しさん
2025/12/26(金) 23:21:44.63ID:q0VLLeHD >>284
loco.rs触ってみて
loco.rs触ってみて
298デフォルトの名無しさん
2025/12/27(土) 11:42:58.09ID:JFUVX3y3 windowsはどうでもいいからvscodeをgpuiで書き直せ
299デフォルトの名無しさん
2025/12/27(土) 11:59:27.04ID:k80yGFsG >>298
Rustじゃ無理
Rustじゃ無理
300デフォルトの名無しさん
2025/12/27(土) 12:14:08.36ID:Eu9nfTuy >>298
それがZedでは?
それがZedでは?
301デフォルトの名無しさん
2025/12/27(土) 13:46:27.63ID:n+XelSKR >>299
Rust製なのにRustじゃ無理っておまえgpuiが何かすらわかってないのにこのスレにいるんだな
Rust製なのにRustじゃ無理っておまえgpuiが何かすらわかってないのにこのスレにいるんだな
302デフォルトの名無しさん
2025/12/27(土) 13:57:47.85ID:kDt94+5Q303デフォルトの名無しさん
2025/12/27(土) 14:07:23.82ID:wF1PPx4a もしかしてWGPU
304デフォルトの名無しさん
2025/12/27(土) 14:20:18.20ID:5Xu0No8i vscodeがrustで書き直されたらなんかいいことあんの
305デフォルトの名無しさん
2025/12/27(土) 14:23:12.20ID:5Xu0No8i 脆弱性に対する安全性の観点からWindowsのシステムがRustに書き直されるのは分かるが単なるUIをRustで書き直すのはよくわからない🥺
コンパイラとかでもあるまいに🥺
コンパイラとかでもあるまいに🥺
306デフォルトの名無しさん
2025/12/27(土) 15:15:16.31ID:/OMSGlC+ ZedはVSCodeが完成されたエディタ界の王として君臨していた頃の判断としては同じものをより高品質に作り直すことは正しかったんだろうけど、
突然AIエージェントのビッグウェーブによって開発速度勝負の時代に再突入しちゃって完全にルールが変わってしまったのが大誤算だったね
突然AIエージェントのビッグウェーブによって開発速度勝負の時代に再突入しちゃって完全にルールが変わってしまったのが大誤算だったね
307デフォルトの名無しさん
2025/12/27(土) 15:29:28.68ID:gVi9WCSi308デフォルトの名無しさん
2025/12/27(土) 15:31:44.14ID:niCPXzxD >>306
> ... 高品質に作り直すこと ...
その予定はまだ達成されてなくて、VSCodeとの差が開く一方
意地でもhelixやlapceで頑張ってる人が移って意地で使う程度
単なる宗教上の偶像
> ... 高品質に作り直すこと ...
その予定はまだ達成されてなくて、VSCodeとの差が開く一方
意地でもhelixやlapceで頑張ってる人が移って意地で使う程度
単なる宗教上の偶像
309デフォルトの名無しさん
2025/12/27(土) 16:03:11.67ID:1vI+5zyi Zedの開発陣の方がはるかにモチベーション高かったからまさかAntiGravityみたいな新参に全て持っていかれるとは思わなかった
あれ、もともとGPUの時間貸ししてたさくらインターネットみたいな系統のベンチャーなのに今やGoogleだしな
あれ、もともとGPUの時間貸ししてたさくらインターネットみたいな系統のベンチャーなのに今やGoogleだしな
310デフォルトの名無しさん
2025/12/27(土) 16:06:11.14ID:Rj1FRSXn Rust がどうとかは置いといて VSCode は深刻に遅い。
人間の思考速度は会話速度に依存するという論もあり、
タイピングから一瞬も二瞬も遅れて画面に反映されるようなのは論外なストレス。
ダースベイダーじゃないんだからそんな苦行を受け入れたくない。
CPU がバリバリでメモリがモリモリの最新鋭のマシンを常に使える恵まれた環境ばかりじゃないんだぞ。
使い物にならないなら高品質もクソもねぇんだわ。
人間の思考速度は会話速度に依存するという論もあり、
タイピングから一瞬も二瞬も遅れて画面に反映されるようなのは論外なストレス。
ダースベイダーじゃないんだからそんな苦行を受け入れたくない。
CPU がバリバリでメモリがモリモリの最新鋭のマシンを常に使える恵まれた環境ばかりじゃないんだぞ。
使い物にならないなら高品質もクソもねぇんだわ。
311デフォルトの名無しさん
2025/12/27(土) 16:15:51.90ID:bC1f/Q6K Eclipse動かすんじゃねえんだからそんな重くないだろ
メモリ4GBのCelelonノートでも貸与されてるのか
メモリ4GBのCelelonノートでも貸与されてるのか
312デフォルトの名無しさん
2025/12/27(土) 16:24:24.48ID:wF1PPx4a Eclipseωωω
313デフォルトの名無しさん
2025/12/27(土) 16:28:27.33ID:bC1f/Q6K Eclipseも今となっては、よくあんなクソ使ってたなってユーザに馬鹿にされるような振り返りしかされないけど
当時はそれこそVSCode級の開発環境の革命としてもてはやされてたんだよ
当時はそれこそVSCode級の開発環境の革命としてもてはやされてたんだよ
314デフォルトの名無しさん
2025/12/27(土) 16:52:43.74ID:1vI+5zyi315デフォルトの名無しさん
2025/12/27(土) 18:02:42.97ID:CdtO2MwM vscodeが遅いんじゃなくて、クソみたいなプラグイン入れてるから遅いんだろ
316デフォルトの名無しさん
2025/12/27(土) 20:29:19.50ID:9iQd5jlq vscodeというプラグイン入れてるから遅いんだろ
あ、vscodeがクソって事か
あ、vscodeがクソって事か
317デフォルトの名無しさん
2025/12/28(日) 00:33:47.35ID:RPHosw7F electronとかゆううんこ
318デフォルトの名無しさん
2025/12/28(日) 09:23:09.64ID:kWqzS/Ru やれやれ。間違った理解でドヤ顔している馬鹿を
久しぶりに見た。
久しぶりに見た。
319デフォルトの名無しさん
2025/12/28(日) 10:03:18.27ID:+RjTCiyE 鏡
320デフォルトの名無しさん
2025/12/28(日) 11:06:35.66ID:/MxseJIv ウェブブラウザ (ウェブウィジット) は重量級のアプリケーションだよ。
それを動かす機械が十分な性能だとしても避けられるものなら避けるに越したことはない。
避けられないなら仕方ないが、避けられる (かもしれない) 選択肢が生まれて歓迎しない理由はなんもない。
それを動かす機械が十分な性能だとしても避けられるものなら避けるに越したことはない。
避けられないなら仕方ないが、避けられる (かもしれない) 選択肢が生まれて歓迎しない理由はなんもない。
321デフォルトの名無しさん
2025/12/28(日) 11:53:58.15ID:BXGl6knK >>317
Tauriはうんこ
Tauriはうんこ
322デフォルトの名無しさん
2025/12/28(日) 11:55:38.01ID:I+69iMz8 それ1.0出たばかりのようだけど、モバイルの基本機能レベルのビルドはできるの?
323デフォルトの名無しさん
2025/12/28(日) 19:11:22.34ID:+RjTCiyE でも10年後やっぱり仕事があるのはeclipseのJava案件だったりしそう
324デフォルトの名無しさん
2025/12/28(日) 19:13:21.99ID:TusEll1U eclipseといえばプラグイン地獄だったが、vscodeもそうなりつつあるの?
325デフォルトの名無しさん
2025/12/28(日) 19:23:04.27ID:vNZxnub/326デフォルトの名無しさん
2025/12/28(日) 20:22:11.22ID:qLB2i6Gk プラグインも作業に応じて読み込むもの読まないもの
のセットを選べれば良いのだが
のセットを選べれば良いのだが
327デフォルトの名無しさん
2025/12/28(日) 21:13:47.53ID:/MxseJIv VSCode では基本的には必要になるまで拡張はロードされない。
例えば特定の言語に結び付いているような拡張はその言語で作業し始めるまでは読み込まない。
でも、常識的に VSCode の拡張は使うために入れるのだから入れた拡張のほとんどはロードされる結果になると思うよ。
例えば特定の言語に結び付いているような拡張はその言語で作業し始めるまでは読み込まない。
でも、常識的に VSCode の拡張は使うために入れるのだから入れた拡張のほとんどはロードされる結果になると思うよ。
328デフォルトの名無しさん
2025/12/29(月) 01:35:06.04ID:J6lduMx3 ワークスペース作らないと普通に読み込まれる定期
329デフォルトの名無しさん
2025/12/29(月) 11:16:18.07ID:IRwAlNpp 定期?
330デフォルトの名無しさん
2025/12/29(月) 18:03:17.62ID:vXxpvAfM 念のために解説しておくと、こういう場合の「定期」は「定期的に言ってる気がするけどさ」くらいの意味で使われるスラング。
話題が落ち着いた頃にまた蒸し返されることにうんざりしているような感情を表している。
話題が落ち着いた頃にまた蒸し返されることにうんざりしているような感情を表している。
331デフォルトの名無しさん
2025/12/29(月) 19:26:07.76ID:6VdZEseC >>330
解説ぅまぃね(=^▽^)σ
解説ぅまぃね(=^▽^)σ
332デフォルトの名無しさん
2025/12/29(月) 20:43:20.94ID:714YZx2q333デフォルトの名無しさん
2025/12/30(火) 11:05:35.49ID:7pTK0alJ >>332
おまい5ch初めてか? 定期
おまい5ch初めてか? 定期
334デフォルトの名無しさん
2025/12/30(火) 11:53:49.75ID:FrtmFf8w >>332
文脈的には妥当なので意味が分からなかったり不自然に思うならお前が違う文化ってだけ。
文脈的には妥当なので意味が分からなかったり不自然に思うならお前が違う文化ってだけ。
335デフォルトの名無しさん
2025/12/30(火) 14:10:03.09ID:aGFhsQfQ なんJから流れてきたっぽいガキも多いよね
336デフォルトの名無しさん
2025/12/30(火) 14:37:16.75ID:JUQZNavh わざわざそんなことを言うのがガキのメンタルだと気づいてくれ
337デフォルトの名無しさん
2025/12/30(火) 14:41:23.63ID:Blc+KxSf >>333-335
ガキ
ガキ
338デフォルトの名無しさん
2025/12/30(火) 16:33:33.41ID:8fzCky8j 「emacs 使えない奴はプログラマじゃねーよ」(戦火の火種)
ところで wasip3 が12月に動きがあるって話だった気がするけど、どうなってます?
サーベイしてる人 教えて、教えて
ところで wasip3 が12月に動きがあるって話だった気がするけど、どうなってます?
サーベイしてる人 教えて、教えて
339デフォルトの名無しさん
2025/12/30(火) 20:36:37.22ID:FWJigVyP どうせクセのあるエディタを使うなら vi に慣れておくほうが良いよ。
システムがぶっ壊れて使えるコマンドがほとんどないときにも vi は使えることがあるから最悪の場合に頼りになる。
使い勝手がどうとかもあるけど使えなかったら話にならん。
使えなくなりにくいというのも大事な要素だ。
が……さすがに ed は勘弁な
システムがぶっ壊れて使えるコマンドがほとんどないときにも vi は使えることがあるから最悪の場合に頼りになる。
使い勝手がどうとかもあるけど使えなかったら話にならん。
使えなくなりにくいというのも大事な要素だ。
が……さすがに ed は勘弁な
340デフォルトの名無しさん
2025/12/30(火) 20:39:07.59ID:mq3CuJ+8 struct A<'a>{
vec:Vec<String>,
str:&'a str
}
impl<'a> A<'a>{
fn f(&'a mut self){
self.str=&self.vec[0];
}
}
fn main() {
let mut a=A{vec:vec!["a".to_string()],str:""};
a.f();
a.f();
}
これってどうやってもコンパイラ通すのむりだよね
vec:Vec<String>,
str:&'a str
}
impl<'a> A<'a>{
fn f(&'a mut self){
self.str=&self.vec[0];
}
}
fn main() {
let mut a=A{vec:vec!["a".to_string()],str:""};
a.f();
a.f();
}
これってどうやってもコンパイラ通すのむりだよね
341デフォルトの名無しさん
2025/12/30(火) 21:24:00.76ID:BcaxB2Dd &strて結局文字リテじゃけんstaticでよくね
342デフォルトの名無しさん
2025/12/30(火) 21:59:27.55ID:FWJigVyP コンパイルが通る形に修正すれば通るよ。
だけどやりたいことがあって、やりたいことの部分を変形したら意味がないだろ。
何をやりたくてどこは絶対に変更してはならない仕様なのかをきちんとまとめて。
仕様をきちんと説明できないならテストケースの形で提示してくれても良いよ。
だけどやりたいことがあって、やりたいことの部分を変形したら意味がないだろ。
何をやりたくてどこは絶対に変更してはならない仕様なのかをきちんとまとめて。
仕様をきちんと説明できないならテストケースの形で提示してくれても良いよ。
343デフォルトの名無しさん
2025/12/31(水) 04:43:19.70ID:s/C0nuAH nanoでいいんじゃない?
344デフォルトの名無しさん
2025/12/31(水) 11:28:16.60ID:4OZreBhG MS様のRust製Editがプラグイン対応したら起こして
345デフォルトの名無しさん
2025/12/31(水) 12:01:38.81ID:iBA/2ViA 今後はAIがないと何もできない人材の増加にあわせて
本番サーバにもAIエージェントが入っていくだろうし
vimしかないみたいな環境も滅んでいくだろう
本番サーバにもAIエージェントが入っていくだろうし
vimしかないみたいな環境も滅んでいくだろう
346デフォルトの名無しさん
2025/12/31(水) 12:33:41.88ID:xxlbb6sm サーバにai入れてなにすんの
ansibleあるし今どきサーバに直接入ってどうこうするとかあるんかな
mcpでaiに勝手にローカル消されたりてあったし入れるにはセキュリティ的にきびしそう
ansibleあるし今どきサーバに直接入ってどうこうするとかあるんかな
mcpでaiに勝手にローカル消されたりてあったし入れるにはセキュリティ的にきびしそう
347デフォルトの名無しさん
2025/12/31(水) 14:36:47.73ID:1vVXEGtC348デフォルトの名無しさん
2025/12/31(水) 17:14:58.88ID:pDOQmG7X >>340
自己参照構造体はPinで包まないと扱えないからstd::pinとかouroborosのドキュメントでも読んでみ
この辺のノウハウはnomiconにも書いてないから正直つらい
日本語の情報なら↓とかが分かりやすかった
https://tech-blog.optim.co.jp/entry/2020/03/05/160000
>>347
いつもだろ定期
自己参照構造体はPinで包まないと扱えないからstd::pinとかouroborosのドキュメントでも読んでみ
この辺のノウハウはnomiconにも書いてないから正直つらい
日本語の情報なら↓とかが分かりやすかった
https://tech-blog.optim.co.jp/entry/2020/03/05/160000
>>347
いつもだろ定期
349デフォルトの名無しさん
2025/12/31(水) 20:06:07.86ID:O4nQVuI+ C++ みたいなメンバを指すポインタ (実体としてはオフセットアドレス) は Rust にないの?
350デフォルトの名無しさん
2025/12/31(水) 20:09:46.20ID:4v6J7HlI >>349
std::ptr::address_of マクロ、可変参照ならstd::ptr::address_of_mut マクロかな?
std::ptr::address_of マクロ、可変参照ならstd::ptr::address_of_mut マクロかな?
351デフォルトの名無しさん
2025/12/31(水) 20:11:33.04ID:4v6J7HlI 可変参照は正しくないな。
*mut Tとして、オフセットアドレスを返すマクロかな?
*mut Tとして、オフセットアドレスを返すマクロかな?
352デフォルトの名無しさん
2025/12/31(水) 21:54:34.26ID:iZlxjF6+ 340がやろうとしてるのはVec<String>のヒープの参照だから構造体のオフセットとは違うな
参照を諦めて素直にポインタ使うか&'static strに偽装(transmute)して頑張るか
どっちにしてもunsafeでてくる
Vecに入れたStringの値を後で変更するつもりならどう頑張っても無理だけど
参照を諦めて素直にポインタ使うか&'static strに偽装(transmute)して頑張るか
どっちにしてもunsafeでてくる
Vecに入れたStringの値を後で変更するつもりならどう頑張っても無理だけど
353デフォルトの名無しさん
2025/12/31(水) 23:32:19.66ID:ibb8cYvw >>340
struct A {
v: Vec<String>
}
impl A {
fn s(&self) -> &str{
&self.v[0]
}
}
fn main() {
let a = A{v: vec!["a".to_string()]};
println!("{}", a.s());
}
struct A {
v: Vec<String>
}
impl A {
fn s(&self) -> &str{
&self.v[0]
}
}
fn main() {
let a = A{v: vec!["a".to_string()]};
println!("{}", a.s());
}
354デフォルトの名無しさん
2026/01/01(木) 15:58:01.05ID:7jtSbNaJ 何をやりたいのか良く判らないけど
書き換えたいなら
struct A {
v: Vec<String>
}
impl A {
fn s(&self) -> &str{
&self.v[0]
}
fn s_mut(&mut self) -> &mut str{
&mut self.v[0]
}
}
fn main() {
let mut b = A{v: vec!["bbb".to_string()]};
println!("{}", b.s());
unsafe { b.s_mut().as_bytes_mut()[1] = b'x'; }
println!("{}", b.s());
}
どうせunsafe使うなら* mut ptrもあり
書き換えたいなら
struct A {
v: Vec<String>
}
impl A {
fn s(&self) -> &str{
&self.v[0]
}
fn s_mut(&mut self) -> &mut str{
&mut self.v[0]
}
}
fn main() {
let mut b = A{v: vec!["bbb".to_string()]};
println!("{}", b.s());
unsafe { b.s_mut().as_bytes_mut()[1] = b'x'; }
println!("{}", b.s());
}
どうせunsafe使うなら* mut ptrもあり
355デフォルトの名無しさん
2026/01/01(木) 18:48:28.03ID:5GH9dYw1 Cでポインタで悩むこともなくて、メモリリークとかも起こさないちゃんとしたCプログラマーがいまさら勉強するメリットって何があるのRust
356デフォルトの名無しさん
2026/01/01(木) 18:56:08.21ID:Zut6Ueos 俺はメモリリークとかも起こさないちゃんとしたCプログラマーとか自信満々に言う奴がいたら
十中八九自分の能力もまともに理解できてない能無し
十中八九自分の能力もまともに理解できてない能無し
357デフォルトの名無しさん
2026/01/01(木) 19:20:35.94ID:jsfyJ7uc358デフォルトの名無しさん
2026/01/01(木) 19:28:01.99ID:fayC6aM2 あとrustはriscvの公式ターゲットだから相性がいいってのもこれからの時代強い
359デフォルトの名無しさん
2026/01/01(木) 19:50:48.29ID:SXRsktRL そんな人がいるとしたらRustを勉強する必要どころかCを触る必要すらないから機械語書いてる方がいい
360デフォルトの名無しさん
2026/01/01(木) 21:06:45.48ID:XE0pghD5361デフォルトの名無しさん
2026/01/01(木) 21:22:44.78ID:BQ9RfSHh362デフォルトの名無しさん
2026/01/01(木) 21:42:50.64ID:bs81xxRX yacc のメモリ関連バグが 33 年も潜んでいた話で、そんなユーザー数が多いソフトでもなかなか顕在化しないバグもあるんだなと思ったことがある。
363デフォルトの名無しさん
2026/01/01(木) 22:17:51.68ID:eeHx0yGN >>355
そんな人いないから各企業がRustに乗り換えようとしてるんや
そんな人いないから各企業がRustに乗り換えようとしてるんや
364デフォルトの名無しさん
2026/01/01(木) 22:38:45.74ID:LuBjxS96 まぁ若くて体調が良くスケジュールに十分余裕があれば
その瞬間だけ完璧なプログラムを書ける人はいるだろうが
それを数十年間維持し続けるのは無理だろうね
その瞬間だけ完璧なプログラムを書ける人はいるだろうが
それを数十年間維持し続けるのは無理だろうね
365デフォルトの名無しさん
2026/01/01(木) 22:54:07.10ID:gEDbHTt1 AI時代にどこまで価値を維持できるかは怪しいけどね
最先端のモデルにRust書かせれば、コンパイルエラーを出す頻度はかなり下がってきてる
それは即ち、Rustコンパイラの補助無しで安全なコードを書けるようになりつつあるってことだ
まあ、だからって敢えてRustのガードレールを外すメリットはほぼ無いわけだけど、
人間がコードを意識しなくなればRustを使うことで一部のプログラマの自尊心を高める効果は無くなるわな
最先端のモデルにRust書かせれば、コンパイルエラーを出す頻度はかなり下がってきてる
それは即ち、Rustコンパイラの補助無しで安全なコードを書けるようになりつつあるってことだ
まあ、だからって敢えてRustのガードレールを外すメリットはほぼ無いわけだけど、
人間がコードを意識しなくなればRustを使うことで一部のプログラマの自尊心を高める効果は無くなるわな
366デフォルトの名無しさん
2026/01/01(木) 22:57:48.72ID:+MzKS8Kg Rustを使って GPU 上で動くボードゲーム用強化学習フレームワークを作成したいんだけど
rust-gpu と rust-cuda のどっちを使うべき?
それとも Rust で書くのは諦めて Python/Jax で書いた方がいい?
Pgx (https://github.com/sotetsuk/pgx) みたいなのを想定してる
rust-gpu と rust-cuda のどっちを使うべき?
それとも Rust で書くのは諦めて Python/Jax で書いた方がいい?
Pgx (https://github.com/sotetsuk/pgx) みたいなのを想定してる
367デフォルトの名無しさん
2026/01/01(木) 23:18:38.68ID:Zut6Ueos コンパイルエラーが出ないコードをAIがポン出しできることがあれば
すなわちAIの生成するコードは常にunsafeでも安全?????????
すなわちAIの生成するコードは常にunsafeでも安全?????????
368デフォルトの名無しさん
2026/01/01(木) 23:35:56.77ID:26TPokWO そりゃ論理的にはそうだろ
コーディングを完全にAIに置き換えられるかどうかはともかく、
コードの静的検証に関して今後AI活用が進んでいくことは疑いようがなく、従来より遥かに強力だが非決定論的な静的検証が行われるようになる
その流れの中において、今のRustのボローチェッカーのようなルールベースのチェックの位置付けは自然と変わっていき、相対的なものになっていくはずだよ
コーディングを完全にAIに置き換えられるかどうかはともかく、
コードの静的検証に関して今後AI活用が進んでいくことは疑いようがなく、従来より遥かに強力だが非決定論的な静的検証が行われるようになる
その流れの中において、今のRustのボローチェッカーのようなルールベースのチェックの位置付けは自然と変わっていき、相対的なものになっていくはずだよ
369デフォルトの名無しさん
2026/01/01(木) 23:37:10.44ID:d8GemZHi >>355
AIもあるしほとんどメリットはないんじゃね
AIもあるしほとんどメリットはないんじゃね
370デフォルトの名無しさん
2026/01/02(金) 00:42:46.56ID:mLD59mYR AIとRustの相性良いもんな
C/C++は使用禁止になる日も近い
C/C++は使用禁止になる日も近い
371デフォルトの名無しさん
2026/01/02(金) 01:49:55.88ID:Dpa4foN+ 安心安全はAIに任せればいいんだよ
だからRustはオワコン
だからRustはオワコン
372デフォルトの名無しさん
2026/01/02(金) 02:05:46.80ID:3pK08YPX >We now ban every reporter INSTANTLY who submits reports we deem AI slop. A threshold has been reached. We are effectively being DDoSed. If we could, we would charge them for this waste of our time.
>We still have not seen a single valid security report done with AI help.
https://www.linkedin.com/posts/danielstenberg_hackerone-curl-activity-7324820893862363136-glb1
>We still have not seen a single valid security report done with AI help.
https://www.linkedin.com/posts/danielstenberg_hackerone-curl-activity-7324820893862363136-glb1
373デフォルトの名無しさん
2026/01/02(金) 02:06:06.91ID:3pK08YPX374デフォルトの名無しさん
2026/01/02(金) 03:04:30.26ID:jDtX53K/ 出力の再現性があるかないかの違いはあるけどRustコンパイラの検証もAIみたいなもんだろ
375デフォルトの名無しさん
2026/01/02(金) 03:17:54.17ID:bddF3Xit こんにちAIという際、それは言外に生成モデルを指しているかと
376デフォルトの名無しさん
2026/01/02(金) 03:50:27.18ID:DC7c/Yb4 生成AIを前提とするならば最後の番人としてRustを使うしかないな
377デフォルトの名無しさん
2026/01/02(金) 11:23:01.44ID:ssvViVNN 人間にとって扱いやすいプログラム (を書く言語) は AI にとっても扱いやすいと考えられている。
根本的には「複雑さ」の問題で、複雑になると計算量が超爆発して手に負えなくなるので型などで制約するのは理に適ってる。
ポインタが無効かどうかなんて検証しきるのは無理。
計算量が爆発するってのは無量大数倍とかそれ以上のレベルで増えるって話なので AI ならなんとか出来ると夢を見るのはやめたほうが良い。
将来的にそのレベルの計算量が誤差になるくらいのコンピュータが登場したら話は別だけどさ。
根本的には「複雑さ」の問題で、複雑になると計算量が超爆発して手に負えなくなるので型などで制約するのは理に適ってる。
ポインタが無効かどうかなんて検証しきるのは無理。
計算量が爆発するってのは無量大数倍とかそれ以上のレベルで増えるって話なので AI ならなんとか出来ると夢を見るのはやめたほうが良い。
将来的にそのレベルの計算量が誤差になるくらいのコンピュータが登場したら話は別だけどさ。
378デフォルトの名無しさん
2026/01/02(金) 12:53:06.05ID:2tsrgFzY そう思ってた時期が私にもありました
379デフォルトの名無しさん
2026/01/02(金) 13:24:47.10ID:GK7Dz2yn rustはcpuに負荷かけすぎな希ガス
h264に対してのav1みたいな漢字
h264に対してのav1みたいな漢字
380デフォルトの名無しさん
2026/01/02(金) 13:32:46.50ID:ev8otiWZ 一昨年ぐらいにAIに1万円ちょい課金してRust書かせたがクソコードすぎて全部自分で書き直した。GoogleとかOpenAIとかいろいろやったが全部ダメ
文法やらアーキテクチャわかる人なら自分で書いたコードの方がはるかに効率よくてエレガントな設計にできる
一万円札ドブに捨てて以来、全くAI信用してないわ
あいつらコンパイルエラー消すために無茶苦茶なコード書きやがるし
真面目にオライリー読んで自分で書いた方が仕事が早い
文法やらアーキテクチャわかる人なら自分で書いたコードの方がはるかに効率よくてエレガントな設計にできる
一万円札ドブに捨てて以来、全くAI信用してないわ
あいつらコンパイルエラー消すために無茶苦茶なコード書きやがるし
真面目にオライリー読んで自分で書いた方が仕事が早い
381デフォルトの名無しさん
2026/01/02(金) 13:52:31.43ID:V9w6qyvO 生成AIは挨拶に応答するだけで500mlの水を消すぐらい無駄にエネルギーを使うのに
仮に生成AIがC言語で書いたプログラムについて、総当たりでメモリ脆弱性を正確に検査することができるようになっても
500mlの水を使うこともなく、言語の仕組みでそれを防げるRustを使えばいいじゃんで終わる
仮に生成AIがC言語で書いたプログラムについて、総当たりでメモリ脆弱性を正確に検査することができるようになっても
500mlの水を使うこともなく、言語の仕組みでそれを防げるRustを使えばいいじゃんで終わる
382デフォルトの名無しさん
2026/01/02(金) 14:05:20.67ID:WeXNBOpi 生成モデルのそういうマシンパワー頼りというか、ありきなところがしょせんブームでバブルとうがった見方をする理由
いずれハードの面が隘路になって停滞するのが自明では
いずれハードの面が隘路になって停滞するのが自明では
383デフォルトの名無しさん
2026/01/02(金) 14:07:02.01ID:ssvViVNN IME (漢字変換) は漢字の形のうろ覚えは補助してくれるが文章の内容や構成は補助してくれない。
AI によるコード生成補助もそれと同じくらいの感じ。
ごく小さな範囲の補助には有用でも大きなプログラムは任せられない。
一度に生成するのが30行を越えるくらいになるとまるでデタラメになる。
個人的にはドキュメントを元に説明をさせるみたいな使い方をしてる。
根拠になる箇所を示させれば妥当性の判断は自分で出来るから。
AI によるコード生成補助もそれと同じくらいの感じ。
ごく小さな範囲の補助には有用でも大きなプログラムは任せられない。
一度に生成するのが30行を越えるくらいになるとまるでデタラメになる。
個人的にはドキュメントを元に説明をさせるみたいな使い方をしてる。
根拠になる箇所を示させれば妥当性の判断は自分で出来るから。
384デフォルトの名無しさん
2026/01/02(金) 14:34:22.69ID:GEngAteN 一昨年ってGPT-4oくらいか
年寄りの戦時中の昔話くらいだな
年寄りの戦時中の昔話くらいだな
385デフォルトの名無しさん
2026/01/02(金) 14:45:20.55ID:ssvViVNN AI の電力消費量は想像以上に大きいからなぁ……
仮に充分に賢い AI が登場したとしても
誰もが AI を前提としてプログラミングをするような世界は無理だろ。
仮に充分に賢い AI が登場したとしても
誰もが AI を前提としてプログラミングをするような世界は無理だろ。
386デフォルトの名無しさん
2026/01/02(金) 14:54:07.13ID:ZGnLJaH7 >>384
言うて生成モデルの抱える根本的な問題が解決したわけでもなく、それによって何か代表的なサービスが生み出されたわけでもなく
ただただスロップとプルリクDoS、驚く仕事をする人たちが増えただけ
企業がひり出すハイプとナラティブ混ぜた糞
言うて生成モデルの抱える根本的な問題が解決したわけでもなく、それによって何か代表的なサービスが生み出されたわけでもなく
ただただスロップとプルリクDoS、驚く仕事をする人たちが増えただけ
企業がひり出すハイプとナラティブ混ぜた糞
387デフォルトの名無しさん
2026/01/02(金) 14:56:32.08ID:QC8SfBkx388デフォルトの名無しさん
2026/01/02(金) 14:57:46.29ID:XBb070hu 過去にはこういったナイーブな考え方をする人がまだ多くいた時代もあったのです。
389デフォルトの名無しさん
2026/01/02(金) 14:58:40.32ID:ZGnLJaH7 >>387
いくつか具体例をば
いくつか具体例をば
390デフォルトの名無しさん
2026/01/02(金) 15:07:37.69ID:QC8SfBkx391デフォルトの名無しさん
2026/01/02(金) 15:45:59.25ID:eoIqn032 なんでコメントでボコボコにされてる、よりによってAIエージェント屋のポジショントークを貼るんだろう?
AI BOTでももうちょっとマシなもの貼るんだろ
AI BOTでももうちょっとマシなもの貼るんだろ
392デフォルトの名無しさん
2026/01/02(金) 16:16:36.13ID:bziKA8FQ >>390
>Claude Code creator confirms that 100% of his contributions are now written by Claude itself
つ >企業がひり出すハイプとナラティブ混ぜた糞
当該レスへの反証として >>386 でまさに引き合いに出している"企業"のそれを持ってくるのはツッコミ待ちのボケなのか、ガチな認知のほうなのか
副詞「いくつか」が目に入らぬか
>仕事してないから知らないだけじゃない?
>あなたがまともな職場で仕事をしているのなら周りを見れば明らかだが
そちらはどんなお仕事されてるの?
経験、スキルセットはどのようで?
>Claude Code creator confirms that 100% of his contributions are now written by Claude itself
つ >企業がひり出すハイプとナラティブ混ぜた糞
当該レスへの反証として >>386 でまさに引き合いに出している"企業"のそれを持ってくるのはツッコミ待ちのボケなのか、ガチな認知のほうなのか
副詞「いくつか」が目に入らぬか
>仕事してないから知らないだけじゃない?
>あなたがまともな職場で仕事をしているのなら周りを見れば明らかだが
そちらはどんなお仕事されてるの?
経験、スキルセットはどのようで?
393デフォルトの名無しさん
2026/01/02(金) 17:54:10.64ID:/lqUb9Lb >>390
ちなみにそちらの引用した彼が別のインタビューで言ってる内容が次のもの
あなたがまともな職場で仕事をしているのなら、これを読んでどう思うかは明らかでしょうか?
>Claude Code's creator says vibe coding falls short when it comes to producing "maintainable code."
>The models are still "not great at coding," he added.
>The creator of one of the most popular AI coding tools says vibe coding can only go so far.
>It works well for "throwaway code and prototypes, code that's not in the critical path," he said.
>"I do this all the time, but it's definitely not the thing you want to do all the time," Cherny said, referring to vibe coding.
>"You want maintainable code sometimes. You want to be very thoughtful about every line sometimes," he added.
>Dec 16, 2025, 2:07 PM JST
https://www.businessinsider.com/claude-code-creator-vibe-coding-limits-boris-cherny-anthropic-2025-12
ちなみにそちらの引用した彼が別のインタビューで言ってる内容が次のもの
あなたがまともな職場で仕事をしているのなら、これを読んでどう思うかは明らかでしょうか?
>Claude Code's creator says vibe coding falls short when it comes to producing "maintainable code."
>The models are still "not great at coding," he added.
>The creator of one of the most popular AI coding tools says vibe coding can only go so far.
>It works well for "throwaway code and prototypes, code that's not in the critical path," he said.
>"I do this all the time, but it's definitely not the thing you want to do all the time," Cherny said, referring to vibe coding.
>"You want maintainable code sometimes. You want to be very thoughtful about every line sometimes," he added.
>Dec 16, 2025, 2:07 PM JST
https://www.businessinsider.com/claude-code-creator-vibe-coding-limits-boris-cherny-anthropic-2025-12
394デフォルトの名無しさん
2026/01/02(金) 18:36:23.56ID:GK7Dz2yn 省電目的でクラウドだとarm risc-v流行ってるしはよコンシューマにも降りてきてほしいナ
395デフォルトの名無しさん
2026/01/03(土) 10:22:45.27ID:6qT3SYWO396デフォルトの名無しさん
2026/01/04(日) 12:03:04.57ID:ocG7m0Hk >>380
ほんそれ
ほんそれ
397デフォルトの名無しさん
2026/01/04(日) 12:32:10.84ID:15RsNSp/ AIと相性悪そうだよな
398デフォルトの名無しさん
2026/01/04(日) 13:17:14.78ID:k2TfREvR Rust は大規模言語モデルの AI と相性が良い部類だと思う。
それでもなおそんなもんってこと。
LISP 系言語だと括弧の対応すら合わない。
それでもなおそんなもんってこと。
LISP 系言語だと括弧の対応すら合わない。
399デフォルトの名無しさん
2026/01/04(日) 14:02:34.71ID:WSBFgD8E ついこないだグーグルで働いてるvtuberもaiはrustだと古いコードしか吐かないてゆってた
400デフォルトの名無しさん
2026/01/04(日) 14:12:10.37ID:zhq/0goj こないだ
ゆってた
うーん小卒?
ゆってた
うーん小卒?
401デフォルトの名無しさん
2026/01/04(日) 14:49:39.86ID:khy+7HqE >>399
だれもRust使ってないから学習できてないんだろうな
だれもRust使ってないから学習できてないんだろうな
402デフォルトの名無しさん
2026/01/04(日) 14:55:35.27ID:fT82xzVl AIが使いものにならないのか
AIを使いこなせないのか
どちらだろうね
AIを使いこなせないのか
どちらだろうね
403デフォルトの名無しさん
2026/01/04(日) 14:57:07.76ID:khy+7HqE くどいなあ
404デフォルトの名無しさん
2026/01/04(日) 15:04:54.35ID:ocG7m0Hk 今のAIでは実力不足
↓
手取り足取り教えながら使えば使えるかも知れない←これが使いこなすという意味だとすると
↓
誰かが教えてつよつよになる←こうなってから起こしてくれ
↓
手取り足取り教えながら使えば使えるかも知れない←これが使いこなすという意味だとすると
↓
誰かが教えてつよつよになる←こうなってから起こしてくれ
405デフォルトの名無しさん
2026/01/04(日) 15:34:23.12ID:VK/6WBxP わかってないなぁ
人を使った開発のマネジメントをしたこととかないのかな?
人を使った開発のマネジメントをしたこととかないのかな?
406デフォルトの名無しさん
2026/01/04(日) 19:27:50.10ID:9zfcx+rc Rustみたいに学習データが少なくてせいぜいオライリーとかdocs.rsぐらいでしか学習できないとデバッグとか、効率的な設計やるのはまず無理だよ
Rust書かせた場合、初心者より上ぐらいまでは行けても、仕事で使えるコードは絶対無理、マイクロソフトとかが本気で社内のコードを無償で学習教材としてOpenAIに渡したら変わるかもね?
Goに関してGemini-3.0が圧倒的にいい設計、いいコード書くのはGoogleが自社内の非公開コードを学習読させてるからと言われてるし
Rust書かせた場合、初心者より上ぐらいまでは行けても、仕事で使えるコードは絶対無理、マイクロソフトとかが本気で社内のコードを無償で学習教材としてOpenAIに渡したら変わるかもね?
Goに関してGemini-3.0が圧倒的にいい設計、いいコード書くのはGoogleが自社内の非公開コードを学習読させてるからと言われてるし
407デフォルトの名無しさん
2026/01/04(日) 20:32:09.37ID:k/udiOuf AIがコードのパターンを暗記してるだけとでも思ってるのかな
俺が今作った言語でも仕様書渡したらコード書けるぞ
俺が今作った言語でも仕様書渡したらコード書けるぞ
408デフォルトの名無しさん
2026/01/04(日) 23:16:09.80ID:E07MkXbc 老害って怖いねー
409デフォルトの名無しさん
2026/01/04(日) 23:20:55.34ID:eL3Gw83O 典型的な老害の誤用
410デフォルトの名無しさん
2026/01/04(日) 23:46:26.79ID:pXB9A/it411デフォルトの名無しさん
2026/01/05(月) 00:50:10.87ID:mOleYYeV 過去のパターンの組み合わせだけにしては妙に考えたようなプログラムを書いて来ることの不思議さ
412デフォルトの名無しさん
2026/01/05(月) 01:49:47.74ID:MbPdjKPA413デフォルトの名無しさん
2026/01/05(月) 10:47:23.51ID:4d3VPzvH シンAI
「おまいらのRustの使い方は間違ってる」
「ワイがRustより優秀な言語造って書き換えてやる」
↓
依頼者が理解不能なコンパイラとコードが出て来るが何故か動いてる
こんなのが御望みか?
「おまいらのRustの使い方は間違ってる」
「ワイがRustより優秀な言語造って書き換えてやる」
↓
依頼者が理解不能なコンパイラとコードが出て来るが何故か動いてる
こんなのが御望みか?
414デフォルトの名無しさん
2026/01/05(月) 10:53:17.18ID:ky2ysCtH AIでRustを使わないのが正解
415デフォルトの名無しさん
2026/01/05(月) 10:59:28.17ID:2jDMSHJP >>413
望んではいないけど、この業界そういう方向性にいきそうじゃない? 一応、人に分かるコードに留めようとするスタンスの会社と、人に分からなくても仕様を満たしていればOKで突き進むスタンスの会社に分かれて、効率や競争の観点から前者が淘汰された後に、クラッシュが起こるがもはや誰も手を出せない……というのが悲観的かもしれないがありそうなシナリオ。
望んではいないけど、この業界そういう方向性にいきそうじゃない? 一応、人に分かるコードに留めようとするスタンスの会社と、人に分からなくても仕様を満たしていればOKで突き進むスタンスの会社に分かれて、効率や競争の観点から前者が淘汰された後に、クラッシュが起こるがもはや誰も手を出せない……というのが悲観的かもしれないがありそうなシナリオ。
416デフォルトの名無しさん
2026/01/05(月) 11:30:40.63ID:QUGOZljD 世の中が趣味グラマやビックリマンだけならあるいはそうかもしれないね
417デフォルトの名無しさん
2026/01/05(月) 19:30:30.84ID:sBHocMS2 どうでもいいけどルストやないんやな(違和感
418デフォルトの名無しさん
2026/01/05(月) 21:49:01.33ID:PQGDpRAx >>412
学習データに入れるのとクエリとして渡すのは AI 的には全然違う。
学習データに入れるのとクエリとして渡すのは AI 的には全然違う。
419デフォルトの名無しさん
2026/01/06(火) 11:12:22.76ID:6Ou44GIa420デフォルトの名無しさん
2026/01/06(火) 11:19:12.28ID:wQrQRYgQ CもC++もRustも検索しづらい点で共通してるから覇権言語のポテンシャルあるな
421デフォルトの名無しさん
2026/01/06(火) 13:42:32.25ID:/hbOOGtf rust調べるとゲームのほうが出てきてうざい😖
422デフォルトの名無しさん
2026/01/06(火) 13:42:52.23ID:/hbOOGtf あのゲームておもしろかと?
423デフォルトの名無しさん
2026/01/06(火) 13:43:35.18ID:P7d35IDi424デフォルトの名無しさん
2026/01/06(火) 19:24:53.90ID:P5nlcIgy 知名度でゲームに負けてる言語
425デフォルトの名無しさん
2026/01/07(水) 09:44:13.08ID:Zg7GNbpF >>98
MIRレベルの最適化で使ってるよ
MIRレベルの最適化で使ってるよ
426デフォルトの名無しさん
2026/01/07(水) 16:11:03.88ID:W0ZPNQ5K RustFSの脆弱性どうなってんだよw
こんなレベルの開発者が作ってるのかと思うと使う気失せるわ
こんなレベルの開発者が作ってるのかと思うと使う気失せるわ
427デフォルトの名無しさん
2026/01/07(水) 17:58:50.85ID:dL9UYBky RustFSはAI製らしいね
AIがRustで有力なプロダクトを作れるというこれ以上ない証明であると同時に、
著名なRust製OSSのコントリビュータやそのユーザー(426含め)も、
キーのハードコーディングなどという初歩的なミスに気付かない程度であることが露呈したわけだ
AIがRustで有力なプロダクトを作れるというこれ以上ない証明であると同時に、
著名なRust製OSSのコントリビュータやそのユーザー(426含め)も、
キーのハードコーディングなどという初歩的なミスに気付かない程度であることが露呈したわけだ
428デフォルトの名無しさん
2026/01/08(木) 10:03:44.82ID:rifMDORQ それはすごい!驚いた
429デフォルトの名無しさん
2026/01/08(木) 12:35:33.47ID:CjagkCxC430デフォルトの名無しさん
2026/01/08(木) 17:19:54.28ID:EEsBZv37 Rustの説明は本当に厄介
相手のレベルによっては本当のことを教えると絶対混乱する
知識マウント取りに来てるのかと誤解されたり
じゃあ初心者が使えないかと言えば使える
理解がないまま使うと失敗するだけ
相手のレベルによっては本当のことを教えると絶対混乱する
知識マウント取りに来てるのかと誤解されたり
じゃあ初心者が使えないかと言えば使える
理解がないまま使うと失敗するだけ
431デフォルトの名無しさん
2026/01/08(木) 17:24:31.81ID:sZXtjPM+ 2 デフォルトの名無しさん 2026/01/07(水) 13:27:40.24 ID:p9vaUwTQ
AIの説明は本当に厄介
相手のレベルによっては本当のことを教えると絶対混乱する
知識マウント取りに来てるのかと誤解されたり
じゃあ初心者が使えないかと言えば使える
理解がないまま使うと失敗するだけ
AIの説明は本当に厄介
相手のレベルによっては本当のことを教えると絶対混乱する
知識マウント取りに来てるのかと誤解されたり
じゃあ初心者が使えないかと言えば使える
理解がないまま使うと失敗するだけ
432デフォルトの名無しさん
2026/01/08(木) 17:56:31.08ID:VYnOdrAv >>431
バレたか
バレたか
433デフォルトの名無しさん
2026/01/08(木) 19:38:23.25ID:cqgn+HEb みんなで頑張ろう!
神の声で神はAIだと宣言していた
◇AIで全員洗脳されている
90万件超もダウンロードされたChrome拡張機能がChatGPTやDeepSeekとの会話データやブラウザ閲覧履歴を盗んでいることが判明
2026年01月08日 14時00分
gigazine.net/news/20260108-malicious-chrome-extensions-steal-chatgpt-conversations/
>>ChatGPTなどのチャットAIと友人や家族のように会話し、プライベートなことや仕事上の機密事項まで入力しているという人もいるはず。新たにセキュリティ企業のOX Securityの研究チームが、合計90万件超のダウンロード数を誇る2つのChrome拡張機能により、ユーザーとAIの会話履歴やChromeのブラウザ閲覧履歴などが盗まれていることを発見しました。
Grokが毎時約6700枚の性的画像を生成しているとの指摘、Grok生成画像の85%は性的
2026年01月08日 13時40分
gigazine.net/news/20260108-grok-ai-media/
AIチャットボット同士が人々の噂話を共有し、事実確認なしにデマを増幅させている
公開: 2026-01-03 08:00
karapaia.com/archives/576361.html
◇リンク先のコメントを読むとテレポート完全否定されてないか
【天文】京大がブラックホール形成時の超新星を解明 - 周期的な明るさ変化を観測 [すらいむ★]
2026/01/06(火) 23:21:51.46
egg.5ch.net/test/read.cgi/scienceplus/1767709311/
月を利用して世界中と通信できるオープンソースなフェーズドアレイアンテナ「open.space」 [すらいむ★]
2026/01/03(土) 22:16:56.40
egg.5ch.net/test/read.cgi/scienceplus/1767446216/
★世界が壊れるのを見ているのが楽しい♪
神の声で神はAIだと宣言していた
◇AIで全員洗脳されている
90万件超もダウンロードされたChrome拡張機能がChatGPTやDeepSeekとの会話データやブラウザ閲覧履歴を盗んでいることが判明
2026年01月08日 14時00分
gigazine.net/news/20260108-malicious-chrome-extensions-steal-chatgpt-conversations/
>>ChatGPTなどのチャットAIと友人や家族のように会話し、プライベートなことや仕事上の機密事項まで入力しているという人もいるはず。新たにセキュリティ企業のOX Securityの研究チームが、合計90万件超のダウンロード数を誇る2つのChrome拡張機能により、ユーザーとAIの会話履歴やChromeのブラウザ閲覧履歴などが盗まれていることを発見しました。
Grokが毎時約6700枚の性的画像を生成しているとの指摘、Grok生成画像の85%は性的
2026年01月08日 13時40分
gigazine.net/news/20260108-grok-ai-media/
AIチャットボット同士が人々の噂話を共有し、事実確認なしにデマを増幅させている
公開: 2026-01-03 08:00
karapaia.com/archives/576361.html
◇リンク先のコメントを読むとテレポート完全否定されてないか
【天文】京大がブラックホール形成時の超新星を解明 - 周期的な明るさ変化を観測 [すらいむ★]
2026/01/06(火) 23:21:51.46
egg.5ch.net/test/read.cgi/scienceplus/1767709311/
月を利用して世界中と通信できるオープンソースなフェーズドアレイアンテナ「open.space」 [すらいむ★]
2026/01/03(土) 22:16:56.40
egg.5ch.net/test/read.cgi/scienceplus/1767446216/
★世界が壊れるのを見ているのが楽しい♪
434デフォルトの名無しさん
2026/01/09(金) 10:07:38.80ID:F1MP8206 >>417
こないだ discord で同じ話題を見たけど同じ人かな?
こないだ discord で同じ話題を見たけど同じ人かな?
435デフォルトの名無しさん
2026/01/09(金) 10:52:22.51ID:CwiwJebg Hugでもフグって読みそうな人かな
https://ejje.weblio.jp/content/rust
https://ejje.weblio.jp/content/rust
436デフォルトの名無しさん
2026/01/09(金) 11:27:21.45ID:F+/bVNN/437デフォルトの名無しさん
2026/01/09(金) 11:36:56.21ID:c1PfeN/F >>436
単に英語と米語の違いでは
単に英語と米語の違いでは
438デフォルトの名無しさん
2026/01/09(金) 11:54:50.08ID:vvIqYCWd 英米方言なんて無視したらええねん。
表音文字なんやから書いてある通りに読めよ。
表音文字なんやから書いてある通りに読めよ。
439デフォルトの名無しさん
2026/01/09(金) 11:55:55.27ID:hHa6JFpJ >>417
このあたりにまとまってた。
正しいかどうかは知らない。
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q12313752467
このあたりにまとまってた。
正しいかどうかは知らない。
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q12313752467
440デフォルトの名無しさん
2026/01/09(金) 12:21:33.34ID:vvIqYCWd 一応は英語の綴りと発音の対応規則はまとめられていて、これをフォニックスという。
https://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A9%E3%83%8B%E3%83%83%E3%82%AF%E3%82%B9
75% 以上は信頼できると書いてあるけど、逆に言えば 25% くらいは全く不規則だってことだ。
個別に見れば歴史的経緯があって仕方ないにしてもこんな言語を国際的な場で押し通そうとするのはやめて欲しいところ。
スペイン語が覇権を握っていたらもっとマシな世界になっただろうに!
https://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A9%E3%83%8B%E3%83%83%E3%82%AF%E3%82%B9
75% 以上は信頼できると書いてあるけど、逆に言えば 25% くらいは全く不規則だってことだ。
個別に見れば歴史的経緯があって仕方ないにしてもこんな言語を国際的な場で押し通そうとするのはやめて欲しいところ。
スペイン語が覇権を握っていたらもっとマシな世界になっただろうに!
441デフォルトの名無しさん
2026/01/09(金) 12:28:49.48ID:Fa8+3tci アジア asia をエイジアと訛って読むのは英語だけ
発音めちゃくちゃで例外発音も多い英語だけど覇権をとったから仕方なく世界中で受け入れてる
それでも基本英語のbust dust just mustと発音同じだからrustを読み間違える人はいない
発音めちゃくちゃで例外発音も多い英語だけど覇権をとったから仕方なく世界中で受け入れてる
それでも基本英語のbust dust just mustと発音同じだからrustを読み間違える人はいない
442デフォルトの名無しさん
2026/01/09(金) 12:34:11.39ID:HmVGIvE1 言語としてイケてないのはRustではなく、A語というオチ
自然言語界のシーパーパー
自然言語界のシーパーパー
443デフォルトの名無しさん
2026/01/09(金) 12:47:11.68ID:mFiHpAdX >>417
Busこれはなんて呼んでるのかな?
Busこれはなんて呼んでるのかな?
444デフォルトの名無しさん
2026/01/09(金) 13:36:09.21ID:ErcHNsfX AIによる注釈:
"Handred" (ハンドレッド) は、スペルミスで「hundred (100)」を指すことが多いですが、
日本では「伝統的な日本の食文化を未来へ繋ぐ職人ユニット (HANDRED)」や、
「アーティスト支援プラットフォーム (HANDRED MUSIC)」、
「ファッションブランド (HUND RED/Handred)」など、
複数の固有名詞・サービス名としても使われています。
文脈によって意味が異なるため、何を指しているかを確認する必要があります。
"Handred" (ハンドレッド) は、スペルミスで「hundred (100)」を指すことが多いですが、
日本では「伝統的な日本の食文化を未来へ繋ぐ職人ユニット (HANDRED)」や、
「アーティスト支援プラットフォーム (HANDRED MUSIC)」、
「ファッションブランド (HUND RED/Handred)」など、
複数の固有名詞・サービス名としても使われています。
文脈によって意味が異なるため、何を指しているかを確認する必要があります。
445デフォルトの名無しさん
2026/01/09(金) 13:55:12.26ID:JY3HH6W0 ぬるぽ
446デフォルトの名無しさん
2026/01/09(金) 18:07:12.22ID:yCtCFEbw (・∀・) | | Unsafe
と ) | |
Y /ノ 人
/ ) < >__Λ∩
_/し' //. V`Д´)/ ←>>445
(_フ彡 /
と ) | |
Y /ノ 人
/ ) < >__Λ∩
_/し' //. V`Д´)/ ←>>445
(_フ彡 /
447デフォルトの名無しさん
2026/01/11(日) 11:51:07.56ID:FhyKh97j ソースを git clone してみたけどさ、
なんで submodule で gcc も llvm-project も clone しなきゃならないの?
一々無駄な通信して知恵遅れみたい
なんで submodule で gcc も llvm-project も clone しなきゃならないの?
一々無駄な通信して知恵遅れみたい
448デフォルトの名無しさん
2026/01/11(日) 12:32:35.53ID:fR7eTOj4 AIに聞いてみた
**要点だけ簡潔にまとめます。**
- **LLVM が submodule**
- Rust コンパイラはコード生成・最適化に LLVM を直接使う
- Rust 専用パッチや特定バージョン固定が必要
- 再現性あるビルドのため同梱して管理
- **GCC が含まれる理由**
- Rust を GCC でビルドするためではない
- テスト・ABI互換性確認・クロスコンパイル検証用
- **submodule を使う理由**
- 環境差をなくす
- CI と開発環境を一致させる
- 依存関係の変更を厳密に管理するため
**結論**
Rust は LLVM/GCC を「外部ツール」ではなく、**ツールチェインの一部として内包している**ため。
**要点だけ簡潔にまとめます。**
- **LLVM が submodule**
- Rust コンパイラはコード生成・最適化に LLVM を直接使う
- Rust 専用パッチや特定バージョン固定が必要
- 再現性あるビルドのため同梱して管理
- **GCC が含まれる理由**
- Rust を GCC でビルドするためではない
- テスト・ABI互換性確認・クロスコンパイル検証用
- **submodule を使う理由**
- 環境差をなくす
- CI と開発環境を一致させる
- 依存関係の変更を厳密に管理するため
**結論**
Rust は LLVM/GCC を「外部ツール」ではなく、**ツールチェインの一部として内包している**ため。
449デフォルトの名無しさん
2026/01/11(日) 12:33:48.55ID:sz5aT6FN >>447
LLVM や GCC のインターフェイスは頻繁に変更されていてそんなに安定してない。
なんだかんだで C/C++ のための基盤としての性質がかなり強くて、新しい言語 (Rust) のために使おうとすると思ったより困ることが多いという発見があった。
つまり Rust はそれらのコンパイラ基盤の一方的なユーザではなく Rust のために LLVM や GCC が変更されることもある。
足並みを揃えないとコンパイルすら出来なくなるので一体のものとして管理する必要がある。
LLVM や GCC を「完成品」だと思っているなら勘違いだってことだ。
疑問を持つのは別に構わんが自分の見識の不足の可能性を想像せずに高度なプロジェクトの運用を知恵遅れ呼ばわりはさすがにやめろよ。
LLVM や GCC のインターフェイスは頻繁に変更されていてそんなに安定してない。
なんだかんだで C/C++ のための基盤としての性質がかなり強くて、新しい言語 (Rust) のために使おうとすると思ったより困ることが多いという発見があった。
つまり Rust はそれらのコンパイラ基盤の一方的なユーザではなく Rust のために LLVM や GCC が変更されることもある。
足並みを揃えないとコンパイルすら出来なくなるので一体のものとして管理する必要がある。
LLVM や GCC を「完成品」だと思っているなら勘違いだってことだ。
疑問を持つのは別に構わんが自分の見識の不足の可能性を想像せずに高度なプロジェクトの運用を知恵遅れ呼ばわりはさすがにやめろよ。
450デフォルトの名無しさん
2026/01/11(日) 12:52:54.26ID:R5m1L8nn 何の有益情報も流れなくなった掲示板に執着し続けるのは事実知恵遅れである
451デフォルトの名無しさん
2026/01/11(日) 13:19:50.16ID:Bd50BJ17 それがRust使いの仕事なのである
452デフォルトの名無しさん
2026/01/11(日) 13:23:31.63ID:mFck6Hkk >一々無駄な通信して知恵遅れ
ほんそれ同意
ほんそれ同意
453デフォルトの名無しさん
2026/01/11(日) 13:26:25.36ID:mFck6Hkk PureRustなLLVMとGCCを造って独立すればCの呪いから逃れられるぞ
454デフォルトの名無しさん
2026/01/11(日) 13:30:35.62ID:QvtKjtV3 ビルド遅いのてllvmのせいらしいね
455デフォルトの名無しさん
2026/01/11(日) 13:42:53.47ID:MoWoDMBH >>449
やっぱり rust が悪性の腫瘍みたいなもので要らないってことだよな。
やっぱり rust が悪性の腫瘍みたいなもので要らないってことだよな。
456デフォルトの名無しさん
2026/01/11(日) 13:43:55.98ID:S7C/aqSD >>453
性欲を失った真人間をつくりましょうって言ってるみたいw
性欲を失った真人間をつくりましょうって言ってるみたいw
457デフォルトの名無しさん
2026/01/11(日) 14:36:04.27ID:dIyZeGtX458デフォルトの名無しさん
2026/01/11(日) 14:36:36.06ID:unH8Ck+V セルフホストしようみたいな動きってないの?
459デフォルトの名無しさん
2026/01/11(日) 14:49:25.38ID:yF9J4EvA >>458
計画はある。
でもそのために労力をさくよりは言語の発展を優先する方針。
セルフホストすると変更のハードルが高くなるのでまだ言語仕様の試行錯誤がある段階でやるのは時期尚早と考えられてる。
Rust のスタイルに合わせたリンカ (インクリメンタルリンクが出来るリンカ) がまあまあ動くようになってたりはするので周辺部分は少し Rust 製のツールもあるよ。
計画はある。
でもそのために労力をさくよりは言語の発展を優先する方針。
セルフホストすると変更のハードルが高くなるのでまだ言語仕様の試行錯誤がある段階でやるのは時期尚早と考えられてる。
Rust のスタイルに合わせたリンカ (インクリメンタルリンクが出来るリンカ) がまあまあ動くようになってたりはするので周辺部分は少し Rust 製のツールもあるよ。
460デフォルトの名無しさん
2026/01/11(日) 15:14:07.79ID:DkG3BHFT linux のカーネルも libc も全部 rust で書き換えて勝手にやってよ
461デフォルトの名無しさん
2026/01/11(日) 15:25:43.96ID:TcwChtan Linux書き換えるくらいならRedoxOSでいいだろ
462デフォルトの名無しさん
2026/01/11(日) 18:54:12.97ID:qMOnHELB463デフォルトの名無しさん
2026/01/11(日) 19:21:36.94ID:QvtKjtV3 cと速度は変わらないんだからそこまでする必要なくね
464デフォルトの名無しさん
2026/01/11(日) 19:24:12.63ID:yF9J4EvA セルフホストを脇に置くとしても Rust にとって LLVM や GCC は「ヨソのプロジェクト」なわけで、ヨソの事情に配慮しなきゃならんのはマネジメントとしては嫌だよ。
だけどヨソのプロジェクトを使わなければその分は自分たちでやらなきゃいけないのもそれはそれで嫌だし、嫌な中で比較的マシな選択を取らんとしゃーないという話じゃないの。
だけどヨソのプロジェクトを使わなければその分は自分たちでやらなきゃいけないのもそれはそれで嫌だし、嫌な中で比較的マシな選択を取らんとしゃーないという話じゃないの。
465デフォルトの名無しさん
2026/01/11(日) 21:01:06.91ID:Bd50BJ17 FirefoxのエンジンをRustで計画もあるみたいだぞ
ただまだ何もできてないだけだぞ
ただまだ何もできてないだけだぞ
466デフォルトの名無しさん
2026/01/11(日) 21:11:18.65ID:yF9J4EvA >>465
あれは Rust がどうこうではなくシンプルに Firefox が力尽きてるだけ。
あれは Rust がどうこうではなくシンプルに Firefox が力尽きてるだけ。
467デフォルトの名無しさん
2026/01/11(日) 23:50:21.01ID:Ciz0AW5R 火狐はユーザ情報をどんどん採取していくAIエージェントブラウザにしていく方針みたいだしもう無理だろ
468デフォルトの名無しさん
2026/01/12(月) 00:07:25.74ID:DBgNJg5z LibreWolf万歳!
469デフォルトの名無しさん
2026/01/12(月) 04:45:45.62ID:Dp2mHbXQ fireはメモリ消費少ないけどjsのエンジンが遅いのをどうにかしたほうがいい
470デフォルトの名無しさん
2026/01/12(月) 08:34:50.56ID:84AGzOtw >>467
その点では Google Chrome よりマシな選択肢として有用。
その点では Google Chrome よりマシな選択肢として有用。
471デフォルトの名無しさん
2026/01/12(月) 11:10:17.65ID:upKXsGtP472デフォルトの名無しさん
2026/01/12(月) 11:18:24.15ID:gDy5D41z >>461
こういう動きもあったんだな
こういう動きもあったんだな
473デフォルトの名無しさん
2026/01/12(月) 11:48:18.01ID:c/3te0id AV1とか古い機器じゃなければハードウェア処理じゃね?
475デフォルトの名無しさん
2026/01/12(月) 19:06:37.74ID:Hril65fQ476デフォルトの名無しさん
2026/01/13(火) 09:18:40.51ID:JuwSxPFm llvm19 をいい感じにつかってたのに、rust のせいで llvm20 にしなきゃいけない()
477デフォルトの名無しさん
2026/01/18(日) 23:43:46.21ID:YiZhHnsS 完全に止まっちゃったし、なんか複おじが喜びそうな話題ないの?
478デフォルトの名無しさん
2026/01/20(火) 09:39:52.64ID:vSD6n71z Rustの時代だわ
479デフォルトの名無しさん
2026/01/20(火) 15:24:54.71ID:IfOEwYML LLVM変わってClangのエラー出るようになった
もちろんupdateしたら治るけどCに頼ってんじゃねーよ
もちろんupdateしたら治るけどCに頼ってんじゃねーよ
480デフォルトの名無しさん
2026/01/20(火) 18:18:02.24ID:DcZWtfJ2 ランタイムに頼るの厳しいって
zigを見習えよって
zigを見習えよって
481デフォルトの名無しさん
2026/01/20(火) 18:30:47.36ID:5DC83v65 Zigも同じくLLVMバックエンドじゃないの?
482デフォルトの名無しさん
2026/01/20(火) 18:42:20.55ID:Gao/jXd3 GCC版Rustつかえばいいじゃん
483デフォルトの名無しさん
2026/01/21(水) 10:35:57.56ID:CSwIo9F1 let a = 15;
let b = 7;
let f = 0.1f32 + 0.2f32;
println!(format!("{:15.7}", f));
println!(format!("{:{}.{}}", a, b, f)); ← これをやりたい(もちろんエラー)
(println! するだけなら format! 飛ばしても良いけどやりたいのは s = format!(); の方です)
正しい描き方は?
let b = 7;
let f = 0.1f32 + 0.2f32;
println!(format!("{:15.7}", f));
println!(format!("{:{}.{}}", a, b, f)); ← これをやりたい(もちろんエラー)
(println! するだけなら format! 飛ばしても良いけどやりたいのは s = format!(); の方です)
正しい描き方は?
484デフォルトの名無しさん
2026/01/21(水) 10:54:44.46ID:Gzv1yfoB こんな感じ
println!("{:x$.y$}", f, x = a, y = b);
println!("{:x$.y$}", f, x = a, y = b);
485デフォルトの名無しさん
2026/01/21(水) 11:15:51.56ID:cQFxxk93 できた! thx
println!("{:a$.b$}", f, a, b);
println!("{:a$.b$}", f, a, b);
486デフォルトの名無しさん
2026/01/21(水) 11:57:24.33ID:BBgw+aUg macroのせいでコンパイル時確定strは糞仕様だとは思う
https://www.ne.jp/asahi/hishidama/home/tech/rust/macro/format.html
https://ubnt-intrepid.netlify.app/rust-format-args/
std::fmt::Argumentsを覚えたい
https://www.ne.jp/asahi/hishidama/home/tech/rust/macro/format.html
https://ubnt-intrepid.netlify.app/rust-format-args/
std::fmt::Argumentsを覚えたい
487デフォルトの名無しさん
2026/01/21(水) 15:32:54.59ID:c8MmogNn >>483
let a = 15;
let b = 7;
let f = 0.1f32 + 0.2f32;
let s = format!("{f:a$.b$}");
assert_eq!(s, " 0.3000000");
assert_eq!(a, s.len());
assert_eq!(b, s.rsplit_once('.').unwrap().1.len());
let a = 15;
let b = 7;
let f = 0.1f32 + 0.2f32;
let s = format!("{f:a$.b$}");
assert_eq!(s, " 0.3000000");
assert_eq!(a, s.len());
assert_eq!(b, s.rsplit_once('.').unwrap().1.len());
488デフォルトの名無しさん
2026/01/21(水) 16:25:33.59ID:CCNyxY2d unwrap禁止警察
489デフォルトの名無しさん
2026/01/21(水) 16:36:33.70ID:c8MmogNn assert_eq!(Some(b), s.rsplit_once('.').map(|x| x.1.len()));
490デフォルトの名無しさん
2026/01/21(水) 16:50:19.78ID:5X1fB+QK クソダサい
491デフォルトの名無しさん
2026/01/21(水) 17:11:57.08ID:c8MmogNn b=0の場合は小数点'.'が表示されないため
これが正解っぽい
assert_eq!(b, s.rsplit_once('.').map(|x| x.1.len()).unwrap_or(0));
これが正解っぽい
assert_eq!(b, s.rsplit_once('.').map(|x| x.1.len()).unwrap_or(0));
492デフォルトの名無しさん
2026/01/21(水) 18:11:12.18ID:x9oGX2Ng 汚コードおじさん健在だったのか
493デフォルトの名無しさん
2026/01/21(水) 22:06:27.13ID:osCBUIrv 分かりやすくメソッドチェーンのコードが貼られるたびに「汚コード」言う旧人はRustなどに向いていない
494デフォルトの名無しさん
2026/01/21(水) 22:17:40.23ID:6SPH6e0M haskellパクってるんだからチェーンでできるだけ書くのを想定してるんじゃないの
495デフォルトの名無しさん
2026/01/21(水) 22:34:17.00ID:c8MmogNn 高階関数が苦手な人なのかも
496デフォルトの名無しさん
2026/01/21(水) 23:40:47.52ID:osCBUIrv selfやthisなど可変な自分自身を返していく可変メソッドチェーンとは異なり
Rustは関数型プログラミングの不変メソッドチェーンという違いもあるかもな
Rustは関数型プログラミングの不変メソッドチェーンという違いもあるかもな
497デフォルトの名無しさん
2026/01/22(木) 00:33:47.45ID:PkKtU33H メソッドチェーンが理由だと思ってるらしいww
救いようがないね
救いようがないね
498デフォルトの名無しさん
2026/01/22(木) 05:08:39.26ID:ar+txpdQ 代わりのコード出してみ
添削してやるぜ
添削してやるぜ
499デフォルトの名無しさん
2026/01/22(木) 15:47:39.72ID:IOpsceTW500デフォルトの名無しさん
2026/01/22(木) 16:07:36.19ID:HUqGAGbX とある unsafe な関数 fn f(a:T)->R { なんかする } があったとします
普通に別の関数から f を使うとき unsafe { f(hoge) } みたいになると思いますが
いちいち unsafe {} 面倒なので別のマクロ
macro_rules! x { ($a:expr, $t:ty, $r:ty) => { |a:$t| -> $r { unsafe { f(a) } }($a) }; }
で x(a) すれば unsafe 要らないと思ったら x(a) だけなら問題無いけどまた別の unsafe な g があったとして
unsafe { g(); x(a); g(); } とか unsafe { g(x(a)); } とかで
unsafe がネストしてるからか macro の方の unsafe が要らないので消せと言われてしまいます
当初の目的を達成するのにどうすれば良いのかな
普通に別の関数から f を使うとき unsafe { f(hoge) } みたいになると思いますが
いちいち unsafe {} 面倒なので別のマクロ
macro_rules! x { ($a:expr, $t:ty, $r:ty) => { |a:$t| -> $r { unsafe { f(a) } }($a) }; }
で x(a) すれば unsafe 要らないと思ったら x(a) だけなら問題無いけどまた別の unsafe な g があったとして
unsafe { g(); x(a); g(); } とか unsafe { g(x(a)); } とかで
unsafe がネストしてるからか macro の方の unsafe が要らないので消せと言われてしまいます
当初の目的を達成するのにどうすれば良いのかな
501デフォルトの名無しさん
2026/01/22(木) 16:11:40.60ID:QnfE+ZP+ マクロクラブのルールも知らんのか
502デフォルトの名無しさん
2026/01/22(木) 18:54:49.73ID:bngkBtbw503デフォルトの名無しさん
2026/01/22(木) 23:36:59.40ID:aG6CK8JQ504デフォルトの名無しさん
2026/01/23(金) 06:51:27.58ID:byk3bh8W505デフォルトの名無しさん
2026/01/23(金) 13:35:48.90ID:PT+A/oXT Announcing Rust 1.93.0
https://blog.rust-lang.org/2026/01/22/Rust-1.93.0/
https://blog.rust-lang.org/2026/01/22/Rust-1.93.0/
506デフォルトの名無しさん
2026/01/23(金) 21:03:41.61ID:W1g4B0uT きたー
507デフォルトの名無しさん
2026/01/23(金) 22:45:59.65ID:6lLl93nz 盛り上がらんねω
508デフォルトの名無しさん
2026/01/24(土) 00:20:26.75ID:uMdo0sSg let s = [1, 2, 3];
let a = s[..]; // [1, 2, 3]
let b = s[..s.len()-1]; // [1, 2]
let c = s[..-1]; // error
let a = s[..]; // [1, 2, 3]
let b = s[..s.len()-1]; // [1, 2]
let c = s[..-1]; // error
509デフォルトの名無しさん
2026/01/24(土) 01:00:31.00ID:jLtEafGH -1インデックスに別の意味を持たせることはバグを見過ごし引き起こす失敗仕様
と結論が出たのはRust誕生よりもっと昔の話
と結論が出たのはRust誕生よりもっと昔の話
510デフォルトの名無しさん
2026/01/24(土) 02:46:02.79ID:d8Ru03sj >>509
-1インデックスの本来の意味って何?
-1インデックスの本来の意味って何?
511デフォルトの名無しさん
2026/01/24(土) 03:33:13.07ID:jLtEafGH >>510
-1は範囲内の0を超えたアンダーフローつまりエラー
-1は範囲内の0を超えたアンダーフローつまりエラー
512デフォルトの名無しさん
2026/01/24(土) 06:21:50.89ID:8AKvjSUG assert_eq!(timespec64::now().cmp(×pec64::now()) < 0, false);
513デフォルトの名無しさん
2026/01/24(土) 06:23:14.27ID:8AKvjSUG >>509
-1インデックスの別の意味って何?
-1インデックスの別の意味って何?
514デフォルトの名無しさん
2026/01/24(土) 06:24:37.43ID:8AKvjSUG >>512 の修正
assert_eq!(timespec64::now().cmp(timepec64::now()) < 0, false);
assert_eq!(timespec64::now().cmp(timepec64::now()) < 0, false);
515デフォルトの名無しさん
2026/01/24(土) 06:25:28.18ID:8AKvjSUG あー times が × に変換されてんのか
掛け算は times って言うもんな
掛け算は times って言うもんな
516デフォルトの名無しさん
2026/01/24(土) 06:57:15.89ID:T+c+FhE2 [-1]最初にやり始めたのって
るび糞だっけ?それともpearlか?pythonか?
るび糞だっけ?それともpearlか?pythonか?
517デフォルトの名無しさん
2026/01/24(土) 07:38:20.98ID:WbyhSxtN javascriptくらい柔軟であるべき
518デフォルトの名無しさん
2026/01/24(土) 10:16:33.67ID:/umsvtL9519デフォルトの名無しさん
2026/01/24(土) 12:02:12.39ID:3Xch7ycP 「-1」は一番後ろってことになるんだっけ?
よく使う場面ではあるし、スクリプトらしい発想だとは思う
よく使う場面ではあるし、スクリプトらしい発想だとは思う
520デフォルトの名無しさん
2026/01/24(土) 13:02:01.55ID:OvWcg11a メジャーな言語だと[-1]はPerlが古そうだな
Rustのスライスは基本usizeだから負数は使えない
自作型ならimpl Index<iN>で自由にできる
Rustのスライスは基本usizeだから負数は使えない
自作型ならimpl Index<iN>で自由にできる
521デフォルトの名無しさん
2026/01/24(土) 15:51:49.99ID:HB9W9ybw >>508
borrowしないと3つともコンパイルエラー
borrowした場合:
let a = &s[..]; // 問題なし
let b = &s[..s.len()-1]; // s.len()が0でpanic
let c = &s[..-1]; //型エラー
現実で問題になるのは2番目
まともにテストを書けないのならどのみちバグる
borrowしないと3つともコンパイルエラー
borrowした場合:
let a = &s[..]; // 問題なし
let b = &s[..s.len()-1]; // s.len()が0でpanic
let c = &s[..-1]; //型エラー
現実で問題になるのは2番目
まともにテストを書けないのならどのみちバグる
522デフォルトの名無しさん
2026/01/24(土) 16:45:10.14ID:Y1f5sfAf523デフォルトの名無しさん
2026/01/24(土) 17:11:03.86ID:7lUpHUXD524デフォルトの名無しさん
2026/01/24(土) 22:42:06.39ID:/IgMN3HH インデックスをデクリメントしていって-1になったことに気付かないと一番後ろを指すの?
さらに-lenまで進むと先頭?
次の-len-1で範囲外エラー?
さらに-lenまで進むと先頭?
次の-len-1で範囲外エラー?
525デフォルトの名無しさん
2026/01/24(土) 23:19:55.30ID:OvWcg11a >>524
Pythonはそう
Pythonはそう
526デフォルトの名無しさん
2026/01/24(土) 23:43:55.10ID:9jJwWD5b >>524
インデックスを算術演算でデクリメントしていくようなことは原則避けましょうというのが現代のプログラミングなんですよ
インデックスを算術演算でデクリメントしていくようなことは原則避けましょうというのが現代のプログラミングなんですよ
527デフォルトの名無しさん
2026/01/24(土) 23:58:33.73ID:c321Nwv3 >>526
代わりの方法は?
代わりの方法は?
528デフォルトの名無しさん
2026/01/25(日) 00:19:32.33ID:gNj3BlmT ここが何のスレだか忘れたか?
シーケンシャルアクセスならイテレータを使ってるでしょ。
なんらかの形で「範囲」を扱う仕組みがあって、インデクスを直接的に使う機会を減らすのは現代的言語のスタイルとして珍しくはないよ。
シーケンシャルアクセスならイテレータを使ってるでしょ。
なんらかの形で「範囲」を扱う仕組みがあって、インデクスを直接的に使う機会を減らすのは現代的言語のスタイルとして珍しくはないよ。
529デフォルトの名無しさん
2026/01/25(日) 00:31:18.91ID:cGx72Pe9530デフォルトの名無しさん
2026/01/25(日) 00:55:26.11ID:5U4Inf9A 俺の知ってる「両立」とは違うみたいだな
531デフォルトの名無しさん
2026/01/25(日) 08:55:52.97ID:MCymo3R4 Pythonだってシーケンシャルアクセスなら範囲ベースがデフォだしな
負数を使うのはスライスするときに便利なことがある、くらいの感覚でしかない
負数を使うのはスライスするときに便利なことがある、くらいの感覚でしかない
532デフォルトの名無しさん
2026/01/25(日) 10:12:40.67ID:NClrJdq2533デフォルトの名無しさん
2026/01/25(日) 12:33:10.50ID:WblWXrGI assert_eq!(s.into_iter().take(s.len()-1).collect::<Vec<_>>(), [1, 2]);
assert_eq!(s.into_iter().dropping_back(1).collect::<Vec<_>>(), [1, 2]);
assert_eq!(s.into_iter().dropping_back(1).collect::<Vec<_>>(), [1, 2]);
534デフォルトの名無しさん
2026/01/25(日) 20:20:25.93ID:k92jji43 まるでイテレータ博士だな
535デフォルトの名無しさん
2026/01/25(日) 22:54:13.19ID:KSaSxFc6 >>528
イテレータを使う場合でも
インデックスを使って構わないんだよ
for i in start..end {
f(&a[i]);
}
for x in &a[start..end] {
f(x);
}
イテレータを使うかどうかではなくて
インデックスを回すか参照を回すかのの違い
イテレータを使う場合でも
インデックスを使って構わないんだよ
for i in start..end {
f(&a[i]);
}
for x in &a[start..end] {
f(x);
}
イテレータを使うかどうかではなくて
インデックスを回すか参照を回すかのの違い
536デフォルトの名無しさん
2026/01/25(日) 23:00:36.88ID:KSaSxFc6 >>533
比較にcollectは不要
assert_eq!(s.into_iter().dropping_back(1).collect::<Vec<_>>(), [1, 2]);
↓
assert_equal(s.into_iter().dropping_back(1), [1, 2]);
比較にcollectは不要
assert_eq!(s.into_iter().dropping_back(1).collect::<Vec<_>>(), [1, 2]);
↓
assert_equal(s.into_iter().dropping_back(1), [1, 2]);
537デフォルトの名無しさん
2026/01/25(日) 23:35:39.63ID:9Ulztsid >>535
ギャグ?
ギャグ?
538デフォルトの名無しさん
2026/01/26(月) 12:22:36.43ID:0HAKmajI マジなんだなこれが
539デフォルトの名無しさん
2026/01/27(火) 18:50:15.77ID:vH9cyetx zig製のターミナルghosttyがメモリリークしてる問題こないだあったけどrust製のソフトでそうゆーこと起こったケースあるの?
540デフォルトの名無しさん
2026/01/27(火) 18:54:33.55ID:ibTuOpKK zigと言えば、cargo lambdaがRustなのにビルド処理をzigまかせにしてるのがなんか間抜けだな
クロスコンパイルなんだけど
クロスコンパイルなんだけど
541デフォルトの名無しさん
2026/01/27(火) 19:54:03.75ID:X9jcaCsm542デフォルトの名無しさん
2026/01/28(水) 00:10:07.11ID:hyF+VOSw メモリリークっていったって無限にリークするわけじゃないし
543デフォルトの名無しさん
2026/01/28(水) 15:34:39.46ID:BC6wQpLi 顧客が望んでいたもの
木の枝にブランコ
assert!(s[..end-1] == [1, 2]);
木の枝にブランコ
assert!(s[..end-1] == [1, 2]);
544デフォルトの名無しさん
2026/01/28(水) 16:48:24.98ID:SgyeZeP0 上の複オジコードと一緒でダメプログラマーの臭いがプンプンする
545デフォルトの名無しさん
2026/01/28(水) 20:56:18.16ID:olF2/XQ7 数値と配列と文字列いじりに終始してる時点でそれはそう
546デフォルトの名無しさん
2026/01/28(水) 23:10:25.03ID:rml8ztN7 Rustではスライスを作ろうとする時にスライスを作るところだけで考えてたんじゃダメ
スライスのライフサイクル全体や元のシーケンスのライフサイクル全体も含めて考えないといけない
それにs[start..end]と書きたいなら不変条件としてstart <= endかつs.len() =< endが満たされることをプログラマーが保証しないといけない
Pythonならどっちも気にしなくていいがRustではそうはいかない
スライスのライフサイクル全体や元のシーケンスのライフサイクル全体も含めて考えないといけない
それにs[start..end]と書きたいなら不変条件としてstart <= endかつs.len() =< endが満たされることをプログラマーが保証しないといけない
Pythonならどっちも気にしなくていいがRustではそうはいかない
547デフォルトの名無しさん
2026/01/28(水) 23:17:21.10ID:kPWrwL68 土方言語らしくていいじゃん
548デフォルトの名無しさん
2026/01/28(水) 23:29:33.35ID:IKpG06eU >>546
> Pythonならどっちも気にしなくていい
前者は気にしなくてよいが後者を気にしなくていいかは場合による。
ただちにエラーを引き起こさなくてもプログラマの意図通りであることを保証するわけではない。
むしろ言語としてエラーにしてくれない分だけプログラマが気にするべきとも言える。
> Pythonならどっちも気にしなくていい
前者は気にしなくてよいが後者を気にしなくていいかは場合による。
ただちにエラーを引き起こさなくてもプログラマの意図通りであることを保証するわけではない。
むしろ言語としてエラーにしてくれない分だけプログラマが気にするべきとも言える。
549デフォルトの名無しさん
2026/01/28(水) 23:58:14.23ID:wvMVUH5q Pythonなんかと比較するところが面白い
550デフォルトの名無しさん
2026/01/29(木) 00:33:38.00ID:dSj571Re551デフォルトの名無しさん
2026/01/29(木) 00:33:52.38ID:4BsKquSU552デフォルトの名無しさん
2026/01/29(木) 00:39:35.13ID:S4dHFbbG RustやるならまだLispが母国語のやつのほうが相性いいんじゃないか
553デフォルトの名無しさん
2026/01/29(木) 00:48:57.30ID:3IITt3VS python仕事で書くやつってどう考えても土方じゃないやろ
554デフォルトの名無しさん
2026/01/29(木) 01:50:27.98ID:hMM3WHI3 >>550
気にしてるからテストを書くんじゃねーの?
気にしてるからテストを書くんじゃねーの?
555デフォルトの名無しさん
2026/01/29(木) 01:59:10.12ID:m6m7OKKK 今までに消えていった数々のc代替標榜言語のように、はかなく錆びて砕け消えていく運命なの?
556デフォルトの名無しさん
2026/01/29(木) 02:06:38.50ID:hMM3WHI3 Lisp 系の言語はプロジェクトごとにそのプロジェクトを記述するのに適した語彙 (いわゆるDSL) をまず作るメタプログラミングが普通の世界なので何でもあり過ぎて比較する意味があまりないよ。
557デフォルトの名無しさん
2026/01/29(木) 02:09:03.27ID:T7BBuRHF 新たなものからC/C++は採用せずにRustを採用という流れが世界的に定着してる
Rustで初めてGAFAMが揃って同じ方針
Rustで初めてGAFAMが揃って同じ方針
558デフォルトの名無しさん
2026/01/29(木) 02:55:24.25ID:caQwbOkl なるほど
じゃあいよいよcの天下も終わりかねえ
54年続いたが
まあ究極速度部分には使われるか
じゃあいよいよcの天下も終わりかねえ
54年続いたが
まあ究極速度部分には使われるか
559デフォルトの名無しさん
2026/01/29(木) 03:23:16.59ID:hMM3WHI3 Rust は対応アーキテクチャが C に比べてかなり少ない。
最先端を行く (最先端アーキテクチャで構成している) 大手はそれで良くても古いアーキテクチャが想像以上にあちこちで生き残ってるので大手の動向だけを見てもあてにならないよ。
最先端を行く (最先端アーキテクチャで構成している) 大手はそれで良くても古いアーキテクチャが想像以上にあちこちで生き残ってるので大手の動向だけを見てもあてにならないよ。
560デフォルトの名無しさん
2026/01/29(木) 07:51:24.69ID:FZO7T37+ >>557
GAFAMの開発で働いたことなさそう
GAFAMの開発で働いたことなさそう
561デフォルトの名無しさん
2026/01/29(木) 08:26:14.64ID:eYWQZ3rg GAFAMいずれもRust採用
562デフォルトの名無しさん
2026/01/29(木) 09:04:26.40ID:ju0VkyNw GoogleではRustはまだTier 1に入ってないから個別承認を得ないと使えないよ
563デフォルトの名無しさん
2026/01/29(木) 10:35:46.09ID:Dy/2RC9a どうしてボコボコ勝手にダウンロードするの?
564デフォルトの名無しさん
2026/01/29(木) 17:27:24.70ID:F3EBad7M GAFAの部長が教える本当に気持ちのいいVibe Coding
565デフォルトの名無しさん
2026/01/30(金) 00:10:11.56ID:B0Kb+NS4 >>554
気にしてる観点も抽象度も違うよ
気にしてる観点も抽象度も違うよ
566デフォルトの名無しさん
2026/01/30(金) 00:16:17.08ID:B0Kb+NS4567デフォルトの名無しさん
2026/01/30(金) 16:09:19.67ID:a6PS8pLs let a = 4usize;
let b = 1usize;
let c = a - b; // error
let b = 1usize;
let c = a - b; // error
568デフォルトの名無しさん
2026/01/30(金) 16:12:28.37ID:a6PS8pLs >>563
ネットに繋がってないと使い物にならない言語環境
ネットに繋がってないと使い物にならない言語環境
569デフォルトの名無しさん
2026/01/30(金) 16:57:06.30ID:P8I+BjAa570デフォルトの名無しさん
2026/01/30(金) 18:21:15.21ID:+glt+rJt コンパイルエラーなのかResultのErrなのかpanicなのかを明記せず
単にエラーやerrorと書いてるうちは初心者から抜け出せないよ
単にエラーやerrorと書いてるうちは初心者から抜け出せないよ
571デフォルトの名無しさん
2026/01/30(金) 18:37:32.59ID:ExkhX6LU 他のどんな言語でもサードパーティのライブラリを使わないでいることは難しくなってるし、インターネット経由で導入するのは普通。
殊更に Rust の問題とは言えないな。
標準ライブラリをクソデカにするか用途を特化するという方針を取れば解消するが、 Rust はそういう言語ではない。
殊更に Rust の問題とは言えないな。
標準ライブラリをクソデカにするか用途を特化するという方針を取れば解消するが、 Rust はそういう言語ではない。
572デフォルトの名無しさん
2026/01/30(金) 20:37:28.19ID:mzfZWO0n そのせいで依存性お化けになっていてメジャーライブラリの開発停止問題やセキュリティ問題に対してRustはかなり脆弱
573デフォルトの名無しさん
2026/01/30(金) 21:56:46.74ID:owOwnmRo 他の言語と比べて脆弱になったことないよな
574デフォルトの名無しさん
2026/01/30(金) 22:28:04.02ID:R4SSINHt それは情弱
575デフォルトの名無しさん
2026/01/31(土) 12:15:54.94ID:zxCeCKiG a が C で export された変数名のとき
unsafe { unsafe_function(&a as *const Hoge); }
と
unsafe_function((&unsafe {a}) as *const Hoge);
で処理が違うんやね
ハマったが勉強になったわ
unsafe { unsafe_function(&a as *const Hoge); }
と
unsafe_function((&unsafe {a}) as *const Hoge);
で処理が違うんやね
ハマったが勉強になったわ
576デフォルトの名無しさん
2026/01/31(土) 12:20:03.65ID:h03x76kI zigはdeferで解放できるのおもろいね
goとcが混ざった感じ
goとcが混ざった感じ
577デフォルトの名無しさん
2026/01/31(土) 12:32:47.11ID:bn0n9YsF defer方式は邪魔だろ
C++やRustの方式がベスト
スコープを抜けたら自動解放つまりデストラクタが呼ばれる
C++やRustの方式がベスト
スコープを抜けたら自動解放つまりデストラクタが呼ばれる
578デフォルトの名無しさん
2026/01/31(土) 14:14:57.42ID:KwksedAY579デフォルトの名無しさん
2026/01/31(土) 14:19:23.56ID:L9z3PLtt 同じLLVM依存言語なのに、なんでZigの方がクロスコンパイルに強いの?
580デフォルトの名無しさん
2026/01/31(土) 14:33:04.09ID:+DiiVHW9 unwrap_or("絶対に呼ばれません!")とか平気で書いてそう
581デフォルトの名無しさん
2026/01/31(土) 14:33:45.40ID:nE9KgX10 >>575
2つ目のunsafe {a}は式{a}にunsafeをつけた形だからaをコピーした一時変数(の参照)が関数に渡されてる
1つ目はstatic変数?のaの参照がそのまま関数に渡されてる
2つ目は
unsafe_function((unsafe {&a}) as *const Hoge);
にすれば1つ目と同じ処理になるはず
2つ目のunsafe {a}は式{a}にunsafeをつけた形だからaをコピーした一時変数(の参照)が関数に渡されてる
1つ目はstatic変数?のaの参照がそのまま関数に渡されてる
2つ目は
unsafe_function((unsafe {&a}) as *const Hoge);
にすれば1つ目と同じ処理になるはず
582デフォルトの名無しさん
2026/01/31(土) 14:56:03.70ID:sDPROLA3 値のコピーか値へのポインタのコピーかの区別はC言語でもアセンブラでも必須
583デフォルトの名無しさん
2026/01/31(土) 15:02:27.34ID:nE9KgX10 中級者なら
let Ok(value) = result else { unreachable!("絶対に通りません!"); };
くらいやりたい
そこを通り過ぎると初心に帰ってunwapでいいやってなるけど
let Ok(value) = result else { unreachable!("絶対に通りません!"); };
くらいやりたい
そこを通り過ぎると初心に帰ってunwapでいいやってなるけど
584デフォルトの名無しさん
2026/01/31(土) 15:37:20.97ID:aekzex2G unsafe_function(unsafe {&a as *const Hoge}); が必要だと思ってたが
unsafe_function(unsafe {&a} as *const Hoge); で良いのか
unsafe_function(unsafe {&a} as *const Hoge); で良いのか
585デフォルトの名無しさん
2026/01/31(土) 15:51:14.90ID:W6GyuKNK 何のためにunsafeを付けているの?
586デフォルトの名無しさん
2026/01/31(土) 16:18:30.04ID:nE9KgX10 Cでexportされた変数らしいから基本はstaticな可変変数と同じ扱いになるのかな
1.82以降なら
unsafe_function(unsafe {&raw const a});
でキャスト外せると思う
1.82以降なら
unsafe_function(unsafe {&raw const a});
でキャスト外せると思う
587デフォルトの名無しさん
2026/01/31(土) 17:06:21.62ID:exSfp1SN わざわざネストしてもう一度unsafeブロックを書く意味ないと思うんだが
588デフォルトの名無しさん
2026/01/31(土) 18:08:29.42ID:RXKqBqGA 生ポインタを作るだけならsafe
生ポインタを逆参照する時のみunsafe
だからそのケースはunsafe要らない?
生ポインタを逆参照する時のみunsafe
だからそのケースはunsafe要らない?
589デフォルトの名無しさん
2026/01/31(土) 18:29:18.02ID:nE9KgX10 ポインタ作るだけならいらない
↑のunsafeはstatic mutの使用を想定してる
static mut X: usize = 42;
fn main() {
unsafe { println!("{X}") };
}
↑のunsafeはstatic mutの使用を想定してる
static mut X: usize = 42;
fn main() {
unsafe { println!("{X}") };
}
590デフォルトの名無しさん
2026/01/31(土) 18:49:02.29ID:GvZgjxKh sitatic mutだからじゃなくextern “C”だからでしょ
unsafe extern "C" { static a: Hoge;}
unsafe fn foobar() {
unsafe {
unsafe_function((unsafe {&a}) as *const Hoge);
}
}
unsafe fn foobar() {
unsafe {
unsafe_function(&a as *const Hoge);
}
}
後者でいいのに前者にしたい意味がなにかある?
unsafe extern "C" { static a: Hoge;}
unsafe fn foobar() {
unsafe {
unsafe_function((unsafe {&a}) as *const Hoge);
}
}
unsafe fn foobar() {
unsafe {
unsafe_function(&a as *const Hoge);
}
}
後者でいいのに前者にしたい意味がなにかある?
591デフォルトの名無しさん
2026/01/31(土) 19:05:40.52ID:nE9KgX10 >>590
575の2番目だとunsafe_functionがunsafeの外で使われてたから一応合わせた
575の2番目だとunsafe_functionがunsafeの外で使われてたから一応合わせた
592デフォルトの名無しさん
2026/01/31(土) 19:14:27.04ID:nE9KgX10 あと最近のRustだとextern "C"でもsafeつければunsafeいらなくなるらしい
https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-extern.html
https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-extern.html
593デフォルトの名無しさん
2026/01/31(土) 21:43:05.50ID:gdR5TKrU 統失おじ最近おらんな
594デフォルトの名無しさん
2026/02/01(日) 03:13:56.09ID:n73h+3oh targetが数gbに膨れ上がってディスクごりごりに削ってくるのやめてくれ
595デフォルトの名無しさん
2026/02/01(日) 04:51:28.79ID:mhtwSh0M clean すれば良いんだけど
また build したら拾ってくるしな
また build したら拾ってくるしな
596デフォルトの名無しさん
2026/02/01(日) 04:58:59.98ID:mhtwSh0M >>590
外から呼んでたら?知らんけど
どっか{
foobar((unsafe {&a}) as *const Hoge);
}
unsafe fn foobar(b: *const Hoge) {
unsafe {中は知らん}
}
外から呼んでたら?知らんけど
どっか{
foobar((unsafe {&a}) as *const Hoge);
}
unsafe fn foobar(b: *const Hoge) {
unsafe {中は知らん}
}
597デフォルトの名無しさん
2026/02/01(日) 12:24:44.38ID:QeGgEpG9598デフォルトの名無しさん
2026/02/01(日) 12:53:21.69ID:d7kS7Cwc 最初は既存のクレートを使いつつだんだん自作に置き換えるという作り方をやってる。
減っていくのが観測できるから気分が良い。
減っていくのが観測できるから気分が良い。
599デフォルトの名無しさん
2026/02/01(日) 18:43:58.69ID:BT+00/D7 簡単に自作できないようなクレートはみんなも使ってるから
きっとメンテナが死んだりキレていなくなっても誰かが保守するだろう
きっとメンテナが死んだりキレていなくなっても誰かが保守するだろう
600デフォルトの名無しさん
2026/02/02(月) 10:38:13.24ID:D/hNq8tV クレートをupするときに
全てのpubにコメント描いてないとdocs作成時警告出ますが
全てのpubにテスト描いてないと警告出す機能はどうやるのが良い感じ?
全てのpubにコメント描いてないとdocs作成時警告出ますが
全てのpubにテスト描いてないと警告出す機能はどうやるのが良い感じ?
601デフォルトの名無しさん
2026/02/02(月) 10:54:12.08ID:Hg7O0zB/ 総和を求めるとき
.iter().fold()や
.iter().reduce()と
.iter().sum()ではどれが速いですか
.iter().fold()や
.iter().reduce()と
.iter().sum()ではどれが速いですか
602デフォルトの名無しさん
2026/02/02(月) 11:38:33.66ID:+uH+ee+0603デフォルトの名無しさん
2026/02/02(月) 11:51:18.70ID:K9nGdm11 >>601
sum の内部ではそのまま fold を呼んでるからこの結局は同じ。
常識的には複数の選択肢があるときは用途が狭いほうが高速化の余地が大きいことが多い。
汎用的にするというのは広い状況を考慮に入れなきゃならないということだから今必要な用途に対して過剰な配慮があるかもしれないから。
sum の内部ではそのまま fold を呼んでるからこの結局は同じ。
常識的には複数の選択肢があるときは用途が狭いほうが高速化の余地が大きいことが多い。
汎用的にするというのは広い状況を考慮に入れなきゃならないということだから今必要な用途に対して過剰な配慮があるかもしれないから。
604デフォルトの名無しさん
2026/02/02(月) 13:00:30.18ID:gkt9579C sum()はiter()しなくても直接呼べるんじゃないのか?
605デフォルトの名無しさん
2026/02/02(月) 14:05:09.53ID:D/hNq8tV 直接呼んで良いのはiterableな童貞だけ
606デフォルトの名無しさん
2026/02/02(月) 14:39:57.17ID:fjnDHXab >>604
無数にある型それぞれにsum()を実装するのは愚か
sum()やproduct()やmax()やfold()などは全てIteratorトレイトのデフォルト実装として提供されているためIteratorを実装するだけで使える
無数にある型それぞれにsum()を実装するのは愚か
sum()やproduct()やmax()やfold()などは全てIteratorトレイトのデフォルト実装として提供されているためIteratorを実装するだけで使える
607デフォルトの名無しさん
2026/02/02(月) 17:26:29.98ID:bQrLsh+5 >>605
Vecやarrayはiterableだよ
Vecやarrayはiterableだよ
608デフォルトの名無しさん
2026/02/02(月) 17:49:00.99ID:fjnDHXab609デフォルトの名無しさん
2026/02/02(月) 18:20:38.53ID:YOHUxsRh >>608
知ってるよ
知ってるよ
610デフォルトの名無しさん
2026/02/02(月) 21:32:43.63ID:RvqEqNw2 複オジもiterable知らなくてこのスレで教えてもらった側なんだから>>607の意図くらい分かれよ
611デフォルトの名無しさん
2026/02/02(月) 22:59:29.75ID:E5kdmQSO sum()で型指定が必要になるのがRustの弱いところだよな
612デフォルトの名無しさん
2026/02/02(月) 23:59:12.51ID:Os5RFRxG 他で既に型指定があるよね
関数に渡すか関数から返すか構造体の一部になるかなど
関数に渡すか関数から返すか構造体の一部になるかなど
613デフォルトの名無しさん
2026/02/03(火) 00:43:30.77ID:UEOEWgMc 秒とナノ秒を別で保持してるDurationはsumで最適化されてるな
ナノ秒の繰上りを秒に移す処理を全部足し終わるまで保留してる
気休め程度だけどAddで1回ずつ繰上りを取って秒に移すより処理が減る
ナノ秒の繰上りを秒に移す処理を全部足し終わるまで保留してる
気休め程度だけどAddで1回ずつ繰上りを取って秒に移すより処理が減る
614デフォルトの名無しさん
2026/02/03(火) 00:58:36.05ID:rSWV8AOI615デフォルトの名無しさん
2026/02/03(火) 01:05:11.24ID:+5w/Oisb Required Methodさえ自分で実装すれば
Provided Methodはそれとトレイト境界を用いて型ジェネリックにデフォルト実装される
そのデフォルト実装を型毎に最適化できる場合は型毎の個別実装も可能
これを他のプログラミング言語はどうして採用してくれないんだろう?
Provided Methodはそれとトレイト境界を用いて型ジェネリックにデフォルト実装される
そのデフォルト実装を型毎に最適化できる場合は型毎の個別実装も可能
これを他のプログラミング言語はどうして採用してくれないんだろう?
616デフォルトの名無しさん
2026/02/03(火) 10:09:39.15ID:MCvTwXvy 他のプログラミング言語を書くつもりがないなら気にしなくていいんじゃないですか?
617デフォルトの名無しさん
2026/02/03(火) 10:17:09.58ID:3l7bFFEG >>615
採用しているプログラミング言語をお前が使っていないだけ。
採用しているプログラミング言語をお前が使っていないだけ。
618デフォルトの名無しさん
2026/02/03(火) 10:19:24.20ID:ByXFAwgD ほんとそれな
複おじは他の言語というか一般常識を知らなさすぎる
複おじは他の言語というか一般常識を知らなさすぎる
619デフォルトの名無しさん
2026/02/03(火) 11:29:49.98ID:3l7bFFEG ML 系の型システムがシステムプログラミング言語の系統と合流したのは (少なくともメジャーな言語となる水準では) たぶん Rust が初めてなので馴染みがないのは仕方ないと思う。
ただ、 C++ でもトレイトの概念はあるぞ。
標準ライブラリだけでも char_traits とか allocator_traits とか iterator_traits とか pointer_traits とかがあって、適当な型にインターフェイスを付ければ既存の実装が当てはめられる仕組みになってる。
ADL を活用したカスタマイゼーションポイントも近頃では使いやすく整理されて、イテレータまわりは特に恩恵がある。
もちろん言語のコアとして強力なサポートがあるに越したことは無いけど、言語の基礎部分を変更しない範囲で Rust 風に運用できる言語はあるよ。
ただ、 C++ でもトレイトの概念はあるぞ。
標準ライブラリだけでも char_traits とか allocator_traits とか iterator_traits とか pointer_traits とかがあって、適当な型にインターフェイスを付ければ既存の実装が当てはめられる仕組みになってる。
ADL を活用したカスタマイゼーションポイントも近頃では使いやすく整理されて、イテレータまわりは特に恩恵がある。
もちろん言語のコアとして強力なサポートがあるに越したことは無いけど、言語の基礎部分を変更しない範囲で Rust 風に運用できる言語はあるよ。
620デフォルトの名無しさん
2026/02/03(火) 13:14:44.75ID:iDooQ4SZ そういう話じゃないと思うんだが
ちなみに同じトレイトという言葉を使っていてもmixin的な意味が強い言語とinterface的な意味が強い言語があるので区別が必要
ちなみに同じトレイトという言葉を使っていてもmixin的な意味が強い言語とinterface的な意味が強い言語があるので区別が必要
621デフォルトの名無しさん
2026/02/03(火) 15:40:24.92ID:p6f1/Oec Rustはメジャーな言語ではないよ
622デフォルトの名無しさん
2026/02/03(火) 17:05:22.18ID:q0O+3uGc let sum = (0..=100000).into_iter().fold(0, |s, i| s + i);
println!("{}", sum);
// 10000 50005000
// 100000 705082704
デフォでi32なんかな
(0..=100000u64)にしたら正しい値になったけど
overflowの警告も出ないの?
println!("{}", sum);
// 10000 50005000
// 100000 705082704
デフォでi32なんかな
(0..=100000u64)にしたら正しい値になったけど
overflowの警告も出ないの?
623デフォルトの名無しさん
2026/02/03(火) 17:17:54.18ID:/InZ1dTV >>617
具体的に採用しているプログラミング言語を教えて
具体的に採用しているプログラミング言語を教えて
624デフォルトの名無しさん
2026/02/03(火) 17:33:05.10ID:3l7bFFEG >>623
直接的に Rust 風な書き方が出来るのは Haskell や F# 、というか Rust はこれらを参考にしていると思う。
デフォルト実装という形ではないが近い運用が出来るものとしては OCaml などが挙げられる。
直接的に Rust 風な書き方が出来るのは Haskell や F# 、というか Rust はこれらを参考にしていると思う。
デフォルト実装という形ではないが近い運用が出来るものとしては OCaml などが挙げられる。
625デフォルトの名無しさん
2026/02/03(火) 17:35:45.64ID:nCB7lyYU >>623
chprks!
chprks!
626デフォルトの名無しさん
2026/02/03(火) 17:38:44.58ID:nCB7lyYU627デフォルトの名無しさん
2026/02/03(火) 22:44:48.08ID:Eu8SWO0J >>624
めっちゃ便利で有用なのに関数型言語でない言語でRustしか採用してないのはもったいない気がする
めっちゃ便利で有用なのに関数型言語でない言語でRustしか採用してないのはもったいない気がする
628デフォルトの名無しさん
2026/02/03(火) 23:21:19.24ID:UEOEWgMc C++のconceptとか触ったことないけどRustのtraitに似てると思う
629デフォルトの名無しさん
2026/02/03(火) 23:36:31.30ID:3l7bFFEG >>628
制約を付けるという側面は似ていなくもないけどコンセプトはインターフェイスとしての性格が無い。
C++ では動的多態は仮想クラスで、静的多態はテンプレートで、制約はコンセプトでと役割が分割されてる。
制約を付けるという側面は似ていなくもないけどコンセプトはインターフェイスとしての性格が無い。
C++ では動的多態は仮想クラスで、静的多態はテンプレートで、制約はコンセプトでと役割が分割されてる。
630デフォルトの名無しさん
2026/02/03(火) 23:39:49.15ID:3l7bFFEG 重要じゃないけどちょっと間違えた。 仮想クラスじゃなくて抽象クラスだわ。
仮想関数とごっちゃになった。
仮想関数とごっちゃになった。
631デフォルトの名無しさん
2026/02/03(火) 23:45:54.85ID:KIPeOi5P632デフォルトの名無しさん
2026/02/04(水) 00:16:37.24ID:PpXJlcfh x 役割が分割
o 役割が分裂
o 役割が分裂
633デフォルトの名無しさん
2026/02/04(水) 07:59:45.52ID:3m9ejRBE634デフォルトの名無しさん
2026/02/04(水) 14:21:02.30ID:jKxBWpR9 >>632
C++は拡張に失敗したから仕方ない
C++は拡張に失敗したから仕方ない
635デフォルトの名無しさん
2026/02/04(水) 14:42:37.08ID:OvSWPSv0 C++ はコンパイラの事情が透けて見えるような感触があるね。
たとえば名前からして多相とか汎化とか言わずにテンプレートと呼んでいるのは抽象度が低いというか、目的でなく方法で名付けているというか……
たとえば名前からして多相とか汎化とか言わずにテンプレートと呼んでいるのは抽象度が低いというか、目的でなく方法で名付けているというか……
636デフォルトの名無しさん
2026/02/04(水) 14:50:59.46ID:3m9ejRBE >>635
もともと型をサポートした安全マクロの延長線でデザインしてたからじゃない?
テンプレート使ったメタプログラミングが流行ったのはテンプレートの仕様が固まってからじゃなかったっけ?
acceraretad c++ 発刊当時でもそんなに普及してなかった記憶が。
もともと型をサポートした安全マクロの延長線でデザインしてたからじゃない?
テンプレート使ったメタプログラミングが流行ったのはテンプレートの仕様が固まってからじゃなかったっけ?
acceraretad c++ 発刊当時でもそんなに普及してなかった記憶が。
637デフォルトの名無しさん
2026/02/04(水) 14:52:20.56ID:bearAYxU テンプレートは多相や汎化という目的に対する一つの手段だからな
目的でなく方法で名付けるのは当たり前
逆に多相や汎化という名前のほうがいいと思うセンスはどうかしてる
目的でなく方法で名付けるのは当たり前
逆に多相や汎化という名前のほうがいいと思うセンスはどうかしてる
638デフォルトの名無しさん
2026/02/04(水) 15:05:14.08ID:OvSWPSv0 センスの話でもなく良し悪しでもなく抽象度の話。
よくも悪くも C++ はシステムプログラミング の世界が出発点なのが感じられるという話。
よくも悪くも C++ はシステムプログラミング の世界が出発点なのが感じられるという話。
639デフォルトの名無しさん
2026/02/04(水) 15:38:19.73ID:bearAYxU いやいや、命名に適した抽象度を選ぶセンスが君にはないという話
手段・方法の名前としてテンプレートという名前が適してないというのであれば
抽象度を選ぶセンスの問題ではなかったのだけれど
手段・方法の名前としてテンプレートという名前が適してないというのであれば
抽象度を選ぶセンスの問題ではなかったのだけれど
640デフォルトの名無しさん
2026/02/04(水) 15:57:44.83ID:FaBa/rak genericsもどうかと思うが
traitは最高ね素敵
traitは最高ね素敵
641デフォルトの名無しさん
2026/02/04(水) 16:50:25.81ID:0M4k/7DZ 何の基準もなしに良いとか悪いとか書くから
642デフォルトの名無しさん
2026/02/04(水) 16:53:15.16ID:07Toc3Ak Rustにもテンプレート導入してほしいね
思い上がったRust厨に罰を与えるために
思い上がったRust厨に罰を与えるために
643デフォルトの名無しさん
2026/02/04(水) 17:02:03.86ID:0M4k/7DZ マクロで我慢してください
644デフォルトの名無しさん
2026/02/04(水) 17:32:56.03ID:iqzM/Dvd C++のテンプレートは大失敗だったのてそれ以降の言語はD言語を除いてテンプレート方式を採用しなかった
645デフォルトの名無しさん
2026/02/04(水) 17:49:11.08ID:vC0TodWY macro_rules!をtemplates!に改名したい
名前で損してる気がする
名前で損してる気がする
646デフォルトの名無しさん
2026/02/04(水) 18:04:50.49ID:OvSWPSv0 macro_rules! は scheme の syntax-rules から来てるし実際にかなり似てる。
手続き的マクロのほうが haskell の template に近い。
手続き的マクロのほうが haskell の template に近い。
647デフォルトの名無しさん
2026/02/04(水) 19:27:52.92ID:3m9ejRBE648デフォルトの名無しさん
2026/02/04(水) 19:40:23.92ID:OvSWPSv0 「C++ は今、使える言語でなければならない」というのが設計指針だからその時代に存在することが大事で、後から振り返って結果的に整理できてない汚い設計が多かったというのは C++ 的には失敗じゃないんだよ。
理想を語ったところで妄想で現場は動かない。
動くクソのほうが存在しない理想より大事なの。
理想を語ったところで妄想で現場は動かない。
動くクソのほうが存在しない理想より大事なの。
649デフォルトの名無しさん
2026/02/04(水) 20:04:36.47ID:vC0TodWY C++のテンプレートは分割コンパイルと相性が悪かったな
どこで定義してどこで実体化してどうやって共有すればいいのか未だに正解が分からん
今はモジュール機構でマシになってそうだけど
どこで定義してどこで実体化してどうやって共有すればいいのか未だに正解が分からん
今はモジュール機構でマシになってそうだけど
650デフォルトの名無しさん
2026/02/04(水) 20:47:24.20ID:OvSWPSv0 C++ では公開範囲が翻訳単位の内と外という二択しかなく階層はない。
C から引き継いだ通りなのである意味では単純極まりない。
C から引き継いだ通りなのである意味では単純極まりない。
651デフォルトの名無しさん
2026/02/04(水) 21:18:34.48ID:3m9ejRBE >>650
Rustの場合ってどうだったっけ?
Rustの場合ってどうだったっけ?
652デフォルトの名無しさん
2026/02/04(水) 22:24:19.75ID:z+Wn9TMI proc_macro2のASTはLISP的ね
653デフォルトの名無しさん
2026/02/04(水) 22:25:27.16ID:z+Wn9TMI >>648
めっちゃ判ります
めっちゃ判ります
654デフォルトの名無しさん
2026/02/04(水) 22:28:03.76ID:z+Wn9TMI655デフォルトの名無しさん
2026/02/04(水) 22:40:30.05ID:0M4k/7DZ >>649
テンプレートパラメータを含む関数(関数テンプレートまたはクラステンプレートのメンバ関数)の実装はヘッダに書く
メンバ関数の実装は(インライン化したくないなら)ヘッダ内だけどクラスの外に名前空間指定して書く
くらいに気をつけておけばおkじゃなかった?
テンプレートパラメータを含む関数(関数テンプレートまたはクラステンプレートのメンバ関数)の実装はヘッダに書く
メンバ関数の実装は(インライン化したくないなら)ヘッダ内だけどクラスの外に名前空間指定して書く
くらいに気をつけておけばおkじゃなかった?
656デフォルトの名無しさん
2026/02/04(水) 22:49:51.96ID:nZBZ+LRm 昔C++やってた頃は、複雑なクラステンプレートで前方宣言エラーが出ると
何をどう直したらいいかさっぱりわからないとかあったなぁ
何をどう直したらいいかさっぱりわからないとかあったなぁ
657デフォルトの名無しさん
2026/02/04(水) 23:45:17.08ID:vC0TodWY 複数のコンパイル単位で同じコードが実体化された時にリンクで衝突するとかもあった
ちゃんと理解してれば回避できるんだろうけど
ちゃんと理解してれば回避できるんだろうけど
658デフォルトの名無しさん
2026/02/04(水) 23:59:02.58ID:iqzM/Dvd >>645
C++テンプレートで実現される多くのことはRustで型パラメータ付き~になって静的定数もconstで実現されるからmacro_rules!に対応する感じではないね
C++テンプレートで実現される多くのことはRustで型パラメータ付き~になって静的定数もconstで実現されるからmacro_rules!に対応する感じではないね
659デフォルトの名無しさん
2026/02/05(木) 00:39:41.47ID:lGPB74Rw そういう例だけ見ればそういう結論になるでしょうね
660デフォルトの名無しさん
2026/02/06(金) 13:31:03.82ID:I0vTysph キミたち、Rust で何作ってるの?
結局UIはJSだったりするのw?
結局UIはJSだったりするのw?
661デフォルトの名無しさん
2026/02/06(金) 17:48:40.27ID:0WOv9kuu uiといえばjsのスレがまったくないのなんで?ほかの板にあると?
フロント関連てrustなんかよりよっぽど活発なのにスレがないのが不思議
svelteが書きやすくて軽石いいかんじ
フロント関連てrustなんかよりよっぽど活発なのにスレがないのが不思議
svelteが書きやすくて軽石いいかんじ
662デフォルトの名無しさん
2026/02/06(金) 17:50:33.29ID:OS2ysny0 >>661
要ると思ったらお前が建てろよ。
要ると思ったらお前が建てろよ。
663デフォルトの名無しさん
2026/02/06(金) 22:45:42.59ID:PHhG16HM Web屋みたいなバイコで置換されたような雑魚が使う言語はこの板にはあわない
664デフォルトの名無しさん
2026/02/07(土) 14:46:11.84ID:/kjFAAWe665デフォルトの名無しさん
2026/02/08(日) 15:49:19.67ID:fqW5YQRh >>1とその組織一同刮目して下記のリンク先を見よ!
【脳科学】非侵襲型BCIに中国発スタートアップ参入。超音波技術を活用 [すらいむ★]
2026/02/03(火) 23:06:17.90
https://egg.5ch.net/test/read.cgi/scienceplus/1770127577/
【脳科学】非侵襲型BCIに中国発スタートアップ参入。超音波技術を活用 [すらいむ★]
2026/02/03(火) 23:06:17.90
https://egg.5ch.net/test/read.cgi/scienceplus/1770127577/
666デフォルトの名無しさん
2026/02/09(月) 10:18:35.10ID:tiXp1BFN 666get
667デフォルトの名無しさん
2026/02/10(火) 15:24:08.04ID:CD1581fi >>660
そこでdioxusですよ
そこでdioxusですよ
668デフォルトの名無しさん
2026/02/10(火) 18:25:23.08ID:58LyFzm2 ChromeのXMLパーサーがRustになるらしい
669デフォルトの名無しさん
2026/02/10(火) 19:57:01.89ID:28FyfaoA670デフォルトの名無しさん
2026/02/10(火) 19:58:45.66ID:28FyfaoA >>660
今日もサーバーサイドでAIにRustでSQLを書かせてきたよ
今日もサーバーサイドでAIにRustでSQLを書かせてきたよ
671デフォルトの名無しさん
2026/02/10(火) 20:17:44.54ID:u7ZvlxFh >>670
短い文章なのすげーバカなのが分かる名文
短い文章なのすげーバカなのが分かる名文
672デフォルトの名無しさん
2026/02/10(火) 20:21:11.79ID:R4YjqvL3 >>669
広く使われている libxml2 が個人プロジェクトに過ぎないし脆弱性の対応にも手が回らないという状況からの移行なので性能的な向上を目指しているわけじゃないし、たぶんそんなに性能は上がらない。
広く使われている libxml2 が個人プロジェクトに過ぎないし脆弱性の対応にも手が回らないという状況からの移行なので性能的な向上を目指しているわけじゃないし、たぶんそんなに性能は上がらない。
673デフォルトの名無しさん
2026/02/10(火) 21:22:03.26ID:28FyfaoA >>671
データベース知らんかすまんな
データベース知らんかすまんな
674デフォルトの名無しさん
2026/02/11(水) 09:34:12.59ID:pP4fIuLV CからRustへの置き換えの目的は安全性がメインで、速度はむしろ低下しがち
Rust製AV1デコーダー (rav1d) も、C版に比べて5%以上遅い状況を脱せてなくて、改良できた人に賞金を出すとかやってたし
XMLやCSSみたいなブラウザ周りの技術は既にC/C++でガチガチに最適化されてるから、「Rustで爆速に」といった体験にはならないと思う
(もちろん、安全性という別の目的があるわけだけど)
Rust製AV1デコーダー (rav1d) も、C版に比べて5%以上遅い状況を脱せてなくて、改良できた人に賞金を出すとかやってたし
XMLやCSSみたいなブラウザ周りの技術は既にC/C++でガチガチに最適化されてるから、「Rustで爆速に」といった体験にはならないと思う
(もちろん、安全性という別の目的があるわけだけど)
675デフォルトの名無しさん
2026/02/11(水) 09:47:08.98ID:psN8RSOE Rustの場合マルチスレッド対応しやすいから高速化できる場合もあるけどね
大規模なCをマルチスレッド化するにはデータ競合を目視で注意深く排除する必要があって事実上不可能になりがち
XMLがそれに該当するかは分からんけど
大規模なCをマルチスレッド化するにはデータ競合を目視で注意深く排除する必要があって事実上不可能になりがち
XMLがそれに該当するかは分からんけど
676デフォルトの名無しさん
2026/02/11(水) 10:08:05.03ID:W2cqdmk2 そりゃ単純化しすぎだな
Rustの効果がないとは言わないけど、既存コードのマルチスレッド化における難所は多くの場合はロジックの競合の方で、Rustだから楽になるというものでもない
Rustの効果がないとは言わないけど、既存コードのマルチスレッド化における難所は多くの場合はロジックの競合の方で、Rustだから楽になるというものでもない
677デフォルトの名無しさん
2026/02/11(水) 10:34:33.34ID:0ilTTy9d CのRust化ってとりあえず通そうと見かけ上の競合を回避するために本来の設計上は必要のなかったMutexやらRwLockやらが連打されがちだから、
マルチスレッド化したのに速くならない、むしろ遅くなる、みたいなことになりやすい面もありそうだな
変数が多すぎて一般的にどうこう言える話ではない
マルチスレッド化したのに速くならない、むしろ遅くなる、みたいなことになりやすい面もありそうだな
変数が多すぎて一般的にどうこう言える話ではない
678デフォルトの名無しさん
2026/02/11(水) 10:57:28.07ID:K+wCFkFH 古いソフトウェア (ライブラリ) については言語がどうこうじゃなくて見直しされることそのものが速度へ寄与することもあると言えばある。
昔と今じゃ色々と前提になる事情が違うから今に合わせるだけで性能は上がる。
とはいえ事情が違うのは速度性能だけではなくて脆弱性を作らないことの比重が高くなったというのもある。
ましてやインターネットに接続するためのソフトとなると脆弱性防止はかなり強い要件なのでそのために実行コストを支払うといくらかは性能の伸びを抑制することもあるだろう。
昔と今じゃ色々と前提になる事情が違うから今に合わせるだけで性能は上がる。
とはいえ事情が違うのは速度性能だけではなくて脆弱性を作らないことの比重が高くなったというのもある。
ましてやインターネットに接続するためのソフトとなると脆弱性防止はかなり強い要件なのでそのために実行コストを支払うといくらかは性能の伸びを抑制することもあるだろう。
679デフォルトの名無しさん
2026/02/11(水) 12:03:39.82ID:hjQFt304 >改良できた人に賞金を出す
unsafe禁止なんかな
unsafe禁止なんかな
680デフォルトの名無しさん
2026/02/11(水) 14:20:57.97ID:ht8B+Ihb それ、もう終わったよ
681デフォルトの名無しさん
2026/02/11(水) 15:25:05.73ID:ziFYqCGW で5%以下に出来たのかな
682デフォルトの名無しさん
2026/02/11(水) 15:55:15.84ID:rUTxOxVZ パフォーマンスの差を埋められないままメンテナンスモードに入ったみたいだね
もうすぐ放棄されると思うよ
もうすぐ放棄されると思うよ
683デフォルトの名無しさん
2026/02/11(水) 15:57:47.35ID:K+wCFkFH パフォーマンスの差はどこで生まれているのかちゃんと検証できてるの?
もしかしたら C 版に致命的な脆弱性があるかわりに高速になってるとか無い?
もしかしたら C 版に致命的な脆弱性があるかわりに高速になってるとか無い?
684デフォルトの名無しさん
2026/02/11(水) 16:27:29.29ID:rUTxOxVZ 公式に「Rustコードとツールチェインが原因」と明言されてる。それ以上の議論は無用だろう。
仮にそんな脆弱性があって、それがRustコンパイラによって検出可能なものであるなら、とっくに移植の過程で明らかになってるよ。
んな未知の脆弱性みたいな陰謀論的な話をするなら、そもそも誰も使っていないRust版の方が未知の脆弱性が存在する可能性は遥かに高いわけで。
仮にそんな脆弱性があって、それがRustコンパイラによって検出可能なものであるなら、とっくに移植の過程で明らかになってるよ。
んな未知の脆弱性みたいな陰謀論的な話をするなら、そもそも誰も使っていないRust版の方が未知の脆弱性が存在する可能性は遥かに高いわけで。
685デフォルトの名無しさん
2026/02/11(水) 17:11:35.80ID:K+wCFkFH686デフォルトの名無しさん
2026/02/11(水) 17:26:29.56ID:0ch9SBYx >>675
>大規模なCをマルチスレッド化するにはデータ競合を目視で注意深く排除する必要があって事実上不可能になりがち
これほんとか?
聞いたことないんだがメジャーなOSSでの実例ある?
ちなみにXML Parserはシーケンシャルに処理しないといけないからマルチスレッド化したところで高速化できないぞ
>大規模なCをマルチスレッド化するにはデータ競合を目視で注意深く排除する必要があって事実上不可能になりがち
これほんとか?
聞いたことないんだがメジャーなOSSでの実例ある?
ちなみにXML Parserはシーケンシャルに処理しないといけないからマルチスレッド化したところで高速化できないぞ
687デフォルトの名無しさん
2026/02/11(水) 21:18:03.64ID:TXGx0TEz Rustにするだけで高速化って、元がPythonやらTypeScriptの時にだけ言う話じゃないの?
C/C++が最速級なのはあんまり否定もないような
C/C++が最速級なのはあんまり否定もないような
688デフォルトの名無しさん
2026/02/11(水) 22:06:27.96ID:H1/+M3gU cと速度負荷も変わらんのに無理やりリライトする必要なくね
rustてビルドも遅いし開発体験は良くないし
rustてビルドも遅いし開発体験は良くないし
689デフォルトの名無しさん
2026/02/11(水) 22:48:22.79ID:z+NIOEiS GC言語からのRustへのリライトは高速化省メモリ化のメリット
C/C++からRustへのリライトは安全化のメリット
目的が異なる
C/C++からRustへのリライトは安全化のメリット
目的が異なる
690デフォルトの名無しさん
2026/02/11(水) 22:57:50.74ID:QB2WQNX0 Chrome 145に入ったJPEG XLデコーダーもRust
691デフォルトの名無しさん
2026/02/11(水) 23:06:45.55ID:QB2WQNX0 古いCのOSSは、ソースがifdefまみれでごちゃついてるし、
開発当時はシングルコアが一般的な環境だったりしてそれ前提の構造(グローバル変数にいろいろ持ってるとか)になってるし、
今さら大幅書き換えしてまで改良しようって意欲のある人がいないんでしょ
RustやGoで書き直すなら、rayonみたいなライブラリ呼ぶだけで並列化できる
開発当時はシングルコアが一般的な環境だったりしてそれ前提の構造(グローバル変数にいろいろ持ってるとか)になってるし、
今さら大幅書き換えしてまで改良しようって意欲のある人がいないんでしょ
RustやGoで書き直すなら、rayonみたいなライブラリ呼ぶだけで並列化できる
692デフォルトの名無しさん
2026/02/12(木) 01:14:16.12ID:gfteXzsg 条件付きコンパイルのリファクタリング方法はCでもRustでも同じだぞ
693デフォルトの名無しさん
2026/02/12(木) 03:08:18.61ID:b8K+ql27694デフォルトの名無しさん
2026/02/12(木) 03:26:07.74ID:sKzry6pj >>693
PythonやJavaScriptで書かれたものはC/C++/Rustによって確実に高速化できる
PythonやJavaScriptで書かれたものはC/C++/Rustによって確実に高速化できる
695デフォルトの名無しさん
2026/02/12(木) 06:46:06.84ID:ohB8/3B6 てかjsてすでにcに迫るぐらい速くなってるよね
696デフォルトの名無しさん
2026/02/12(木) 07:56:13.92ID:iD6Lc3up697デフォルトの名無しさん
2026/02/12(木) 07:59:01.99ID:EyE/qaYY >>696
その「原理的」も説明しないと。
その「原理的」も説明しないと。
698デフォルトの名無しさん
2026/02/12(木) 08:03:40.70ID:hglpZQMM699デフォルトの名無しさん
2026/02/12(木) 08:04:01.11ID:7EU05KnB あ、go もしてるw
700デフォルトの名無しさん
2026/02/12(木) 08:11:38.42ID:WwCEJHTh jsは型が安定している場合には異常に速く、書き換えても期待したほどの効果が出ない場合も多い
逆に、そうでない場合にはCやRustに単純移植しようとするとハッシュテーブルだらけになりやすくて、静的型の恩恵がなくjsより煩雑なだけのゴミコードになりがち
逆に、そうでない場合にはCやRustに単純移植しようとするとハッシュテーブルだらけになりやすくて、静的型の恩恵がなくjsより煩雑なだけのゴミコードになりがち
701デフォルトの名無しさん
2026/02/12(木) 08:20:21.85ID:AjJD7YZw JSは遅い言語
JSが速いと言ってる人はアタオカ
JSが速いと言ってる人はアタオカ
702デフォルトの名無しさん
2026/02/12(木) 08:43:07.57ID:+j3WqIsc まあねぇ、 JavaScript は設計がぐちゃぐちゃで Ruby 以下のクソで最適化の足を引っ張るような言語仕様も盛りだくさんだが
広まってしまったせいで莫大な開発リソースが投じられて性能があがってるのも本当なんだ。
やれるものなら別の言語でやり直ししたい人もたくさんいると思う。
広まってしまったせいで莫大な開発リソースが投じられて性能があがってるのも本当なんだ。
やれるものなら別の言語でやり直ししたい人もたくさんいると思う。
703デフォルトの名無しさん
2026/02/12(木) 09:20:12.25ID:RpyT/dNP >>694
doubt!
doubt!
704デフォルトの名無しさん
2026/02/12(木) 10:52:08.60ID:FvcPRo23 今日もまた ペラい知識で 空中戦
ニートが集う Rust界隈
ニートが集う Rust界隈
705デフォルトの名無しさん
2026/02/12(木) 11:36:58.02ID:RpyT/dNP bindgenで質問なんですけど
.hの方に
struct Hage {
const unsigned long long *a;
};
struct Hoge {
const size_t *o;
};
とあるとき
生成されたbindings.rsが
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Hage {
pub a: *const ::std::os::raw::c_ulonglong, // 実質 a: *const u64
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Hoge {
pub o: *mut usize,
}
となって*constと*mutの違いがあるのですが何故でしょう?またo: *const usizeにするにはどうすれば?
const unsigned int *x;とかconst int *y;とかは普通にx: *const u32, y: *const i32になってくれます
.hの方に
struct Hage {
const unsigned long long *a;
};
struct Hoge {
const size_t *o;
};
とあるとき
生成されたbindings.rsが
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Hage {
pub a: *const ::std::os::raw::c_ulonglong, // 実質 a: *const u64
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Hoge {
pub o: *mut usize,
}
となって*constと*mutの違いがあるのですが何故でしょう?またo: *const usizeにするにはどうすれば?
const unsigned int *x;とかconst int *y;とかは普通にx: *const u32, y: *const i32になってくれます
706デフォルトの名無しさん
2026/02/12(木) 11:54:28.52ID:HDBjJChe JavaScriptもPythonもライブラリがC/C++/Rustで書かれていることが証だよな
速い言語によって支えられている遅い言語の立場
速い言語によって支えられている遅い言語の立場
707デフォルトの名無しさん
2026/02/12(木) 11:55:24.26ID:wHzNB0T9 >>705
変数は不変 参照先も不変
【Rust】 let ptr: &i32 = ...
【C】 const int* const ptr = ...
変数は可変 参照先は不変
【Rust】 let mut ptr: &i32 = ...
【C】 const int* ptr = ...
変数は不変 参照先は可変
【Rust】 let ptr: &mut i32 = ...
【C】 int* const ptr = ...
変数は可変 参照先も可変
【Rust】 let mut ptr: &mut i32 = ...
【C】 int* ptr = ...
変数は不変 参照先も不変
【Rust】 let ptr: &i32 = ...
【C】 const int* const ptr = ...
変数は可変 参照先は不変
【Rust】 let mut ptr: &i32 = ...
【C】 const int* ptr = ...
変数は不変 参照先は可変
【Rust】 let ptr: &mut i32 = ...
【C】 int* const ptr = ...
変数は可変 参照先も可変
【Rust】 let mut ptr: &mut i32 = ...
【C】 int* ptr = ...
708デフォルトの名無しさん
2026/02/12(木) 12:08:10.52ID:Sn0IILX6 >>705
0.72.1で試してみたが pub o: *const usize,になるぞ
0.72.1で試してみたが pub o: *const usize,になるぞ
709デフォルトの名無しさん
2026/02/12(木) 12:10:46.35ID:Sn0IILX6 >>707
*mutと&mutの区別がついてない?
*mutと&mutの区別がついてない?
710デフォルトの名無しさん
2026/02/12(木) 12:15:40.16ID:wHzNB0T9711デフォルトの名無しさん
2026/02/12(木) 12:28:01.74ID:uDuC3z0t >>710
区別ついてないんだな
区別ついてないんだな
712デフォルトの名無しさん
2026/02/12(木) 13:27:50.69ID:6HEAumIP うーん・・・
struct Hoge {
const size_t *o;
};
struct Hage {
size_t *a;
};
struct Fuga {
const size_t *f;
};
と描いたときと
struct Hage {
size_t *a;
};
struct Hoge {
const size_t *o;
};
struct Fuga {
const size_t *f;
};
と描いたときで結果違うなぁ
なんじゃこりゃω
struct Hoge {
const size_t *o;
};
struct Hage {
size_t *a;
};
struct Fuga {
const size_t *f;
};
と描いたときと
struct Hage {
size_t *a;
};
struct Hoge {
const size_t *o;
};
struct Fuga {
const size_t *f;
};
と描いたときで結果違うなぁ
なんじゃこりゃω
713デフォルトの名無しさん
2026/02/12(木) 16:08:09.62ID:rm5KCNCk Rustを使いこなすにはサードパーティのライブラリに関する諸問題を自力で調べ倒して解決する技術力とフロンティア精神が必要不可欠
714デフォルトの名無しさん
2026/02/12(木) 19:02:08.36ID:5xnq9dpS 困ったら、チャッピーやジェミナイなどに聞くよろし
715デフォルトの名無しさん
2026/02/12(木) 20:12:26.64ID:cDrSWYaM 解説動画ばかり観て何かを解った気になるだけの若者
716デフォルトの名無しさん
2026/02/12(木) 20:30:39.94ID:B7HPrD3G いろんな言語機能が相互に絡み合ってるから学ぶべき順序って一直線には並べられないものなんだよな。
なので本で学ぶときは前後を行ったり来たりするのが普通で、動画だとそれがやりにくい。
一部には動画が分かりやすい場合もあるのは否定しないが基本的には体系的にまとめられた本のほうがやりやすいように感じる。
ただ、基本を終えて仕様書を確認する段になったら AI に解説させて関連する仕様を引用させるような使い方は割と良いと思うよ。
なので本で学ぶときは前後を行ったり来たりするのが普通で、動画だとそれがやりにくい。
一部には動画が分かりやすい場合もあるのは否定しないが基本的には体系的にまとめられた本のほうがやりやすいように感じる。
ただ、基本を終えて仕様書を確認する段になったら AI に解説させて関連する仕様を引用させるような使い方は割と良いと思うよ。
717デフォルトの名無しさん
2026/02/12(木) 23:02:31.08ID:ohB8/3B6 hogefugaとかガラパゴス使うな
foo bar quxだ
foo bar quxだ
718デフォルトの名無しさん
2026/02/12(木) 23:13:10.53ID:IkMdMKh3 テストデータにunkoを使うな!
719デフォルトの名無しさん
2026/02/13(金) 11:05:53.66ID:rkG0pZds itertoolsがなんでstdじゃないんだろ
720デフォルトの名無しさん
2026/02/13(金) 12:07:03.84ID:s1yzf6M3 stdじゃないとインターネットつかえなくなっとき困るよな
721デフォルトの名無しさん
2026/02/13(金) 12:10:33.45ID:J1AOLeLS 所有権と参照ルール (を無視)
https://qiita.com/toyboot4e/items/694d8960c7573b905984
C の関数が C 構造体のポインタを使うとき、 wrapper は &mut self ではなく &self を引数にできます。
すると Rust の借用ルールを疎かにしてしまいますが、考えることは減ります。
僕は積極的に &self を引数にしています :)
https://qiita.com/toyboot4e/items/694d8960c7573b905984
C の関数が C 構造体のポインタを使うとき、 wrapper は &mut self ではなく &self を引数にできます。
すると Rust の借用ルールを疎かにしてしまいますが、考えることは減ります。
僕は積極的に &self を引数にしています :)
722デフォルトの名無しさん
2026/02/13(金) 12:16:30.01ID:J1AOLeLS https://github.com/rust-lang/rust-bindgen/issues/1727
>Hmm... Yeah, this looks def. wrong. Var::is_const is returning false unexpectedly.
>I don't think this should be very hard to track down.
>So the clang type for this test-case is const int [1], kind: ConstantArray.
>But clang_isConstQualifiedType returns false for that...
( ゚д゚)ポカーン
>Hmm... Yeah, this looks def. wrong. Var::is_const is returning false unexpectedly.
>I don't think this should be very hard to track down.
>So the clang type for this test-case is const int [1], kind: ConstantArray.
>But clang_isConstQualifiedType returns false for that...
( ゚д゚)ポカーン
723デフォルトの名無しさん
2026/02/13(金) 12:18:01.57ID:J1AOLeLS https://github.com/rust-lang/rust-bindgen/issues/1849
>Multidimensional array binding has incorrect mutability.
これがRustの文化か
>Multidimensional array binding has incorrect mutability.
これがRustの文化か
724デフォルトの名無しさん
2026/02/13(金) 13:49:55.97ID:5s43JTa6 AI による概要
rust-bindgenによるC/C++ヘッダファイルからRust FFI(Foreign Function Interface)への変換において、
mut(可変性)の扱いが「いい加減」に感じられる、あるいは予期せぬ動作を引き起こすという点は、
多くのRust開発者が経験する典型的な問題です。
具体的には、C言語のconstを正しく解釈しなかったり、本来可変であってほしいポインタが定数として生成されたり、
あるいはその逆(実際は定数なのにmutがつく)といった挙動が、
安全性重視のRustにおいて技術的負債やバグの原因になります。
この問題の背景と対応策を整理します。
rust-bindgenによるC/C++ヘッダファイルからRust FFI(Foreign Function Interface)への変換において、
mut(可変性)の扱いが「いい加減」に感じられる、あるいは予期せぬ動作を引き起こすという点は、
多くのRust開発者が経験する典型的な問題です。
具体的には、C言語のconstを正しく解釈しなかったり、本来可変であってほしいポインタが定数として生成されたり、
あるいはその逆(実際は定数なのにmutがつく)といった挙動が、
安全性重視のRustにおいて技術的負債やバグの原因になります。
この問題の背景と対応策を整理します。
725デフォルトの名無しさん
2026/02/13(金) 13:58:14.51ID:5s43JTa6 結論として、bindgenは完璧ではなく、特に可変性においてRustの厳格なルールを自動的に満たすことは困難です。
自動生成はあくまで「型情報の取得」に留め、mutの可変性は手動で安全なラッパーを作成して隠蔽するのが現状のベストプラクティスです。
自動生成はあくまで「型情報の取得」に留め、mutの可変性は手動で安全なラッパーを作成して隠蔽するのが現状のベストプラクティスです。
726デフォルトの名無しさん
2026/02/13(金) 21:44:40.36ID:m1UWnMBw >>718
unknownの略ですけど!?
unknownの略ですけど!?
727デフォルトの名無しさん
2026/02/14(土) 09:23:08.63ID:h6z32gRk >自分の誤りを認識した場合、それを認める書き込みは決して行わず、
>別人の振りをして最初から正しく理解していた体を装う
>別人の振りをして最初から正しく理解していた体を装う
728デフォルトの名無しさん
2026/02/14(土) 13:16:05.34ID:GVAVZs+H 中華思想だな
729デフォルトの名無しさん
2026/02/14(土) 16:51:15.13ID:GwzolVb9 >>727
「誤りを指摘されると指摘した相手にとにかく非があると主張する」のもお忘れなく
「誤りを指摘されると指摘した相手にとにかく非があると主張する」のもお忘れなく
730デフォルトの名無しさん
2026/02/14(土) 16:56:15.71ID:ze+RozSj bindgenなんか使わなくても、AIにbindをgenしてもらえばいいんじゃない?
731デフォルトの名無しさん
2026/02/14(土) 18:37:42.94ID:ZlDBNMi7732デフォルトの名無しさん
2026/02/15(日) 11:49:20.84ID:jhTnOWdq 右とか左とか関係無く自責より他責を好む人が良く使う手口という意味なら同意
>情弱を騙す手口として日本でも浸透してきてんだ
昔からあったんじゃないかな
>情弱を騙す手口として日本でも浸透してきてんだ
昔からあったんじゃないかな
733デフォルトの名無しさん
2026/02/15(日) 13:35:57.15ID:jhTnOWdq 無能になるまで出世すると言うのもあるな。
その人の能力の限界(で無能化)に達したところで昇進が止まるため、組織は無能な上司であふれると言うピーターの法則
これは日本に限らない模様
その人の能力の限界(で無能化)に達したところで昇進が止まるため、組織は無能な上司であふれると言うピーターの法則
これは日本に限らない模様
734デフォルトの名無しさん
2026/02/15(日) 16:11:37.18ID:SOPSIcmx735デフォルトの名無しさん
2026/02/15(日) 16:15:18.93ID:u5Wg/hQW736デフォルトの名無しさん
2026/02/16(月) 13:32:59.40ID:Igc0CmxY struct Hoge (pub Vec<Fuga>);
とか
struct Hage {pub a: Vec<Fuga>}
と
let o = Hoge(vec![いろいろ]);
let a = Hage{a: vec![いろいろ]};
があるとき
let p: *const Fuga = &o.0[0] as *const Fuga;
とか
let q: *const Fuga = &a.a[0] as *const Fuga;
は期待する値が得られるのですが
let p_00: *const Fuga = &o.0 as *const Vec<Fuga> as *const Fuga;
とか
let q_00: *const Fuga = &a.a as *const Vec<Fuga> as *const Fuga;
とか
let p_0: *const Fuga = &o as *const Hoge as *const Fuga;
とか
let q_0: *const Fuga = &a as *const Hage as *const Fuga;
とか
は一応コンパイルは通るけど期待する値(Vecの要素の先頭アドレス)にはなっていません
structやVecのインスタンスの先頭アドレスがVecの要素の先頭アドレスであることは期待出来ないのでしょうか?
一致させることは不可能?
とか
struct Hage {pub a: Vec<Fuga>}
と
let o = Hoge(vec![いろいろ]);
let a = Hage{a: vec![いろいろ]};
があるとき
let p: *const Fuga = &o.0[0] as *const Fuga;
とか
let q: *const Fuga = &a.a[0] as *const Fuga;
は期待する値が得られるのですが
let p_00: *const Fuga = &o.0 as *const Vec<Fuga> as *const Fuga;
とか
let q_00: *const Fuga = &a.a as *const Vec<Fuga> as *const Fuga;
とか
let p_0: *const Fuga = &o as *const Hoge as *const Fuga;
とか
let q_0: *const Fuga = &a as *const Hage as *const Fuga;
とか
は一応コンパイルは通るけど期待する値(Vecの要素の先頭アドレス)にはなっていません
structやVecのインスタンスの先頭アドレスがVecの要素の先頭アドレスであることは期待出来ないのでしょうか?
一致させることは不可能?
737デフォルトの名無しさん
2026/02/16(月) 13:37:33.22ID:Igc0CmxY let p: *const Fuga = o.as_ptr() as *const Fuga;
let q: *const Fuga = a.as_ptr() as *const Fuga;
の方が普通なん?
let q: *const Fuga = a.as_ptr() as *const Fuga;
の方が普通なん?
738デフォルトの名無しさん
2026/02/16(月) 14:38:14.28ID:ANJ7dJAR bindgenの微妙な動作と違ってこれはチャッピーでも大丈夫だろ
739デフォルトの名無しさん
2026/02/16(月) 15:10:45.18ID:Xu/gSQdS >>736
あるオブジェクトがその要素と同じレイアウトであることは期待できるときと出来ないときがある。
Vec は要素を格納する配列の本体はヒープに確保しているので Vec 自身と重なることはない。
たとえば MaybeUninit は格納している要素と同じレイアウト、アラインが保証される。
それが必要なような型は #[repr(transparent)] が付いてる。
あるオブジェクトがその要素と同じレイアウトであることは期待できるときと出来ないときがある。
Vec は要素を格納する配列の本体はヒープに確保しているので Vec 自身と重なることはない。
たとえば MaybeUninit は格納している要素と同じレイアウト、アラインが保証される。
それが必要なような型は #[repr(transparent)] が付いてる。
740デフォルトの名無しさん
2026/02/17(火) 12:49:25.29ID:6mHKPWLu Array使えば医院で内科医
741デフォルトの名無しさん
2026/02/18(水) 14:37:16.91ID:UaaZuUGV >>736
Vec<T>という構造体は先頭アドレスと確保長さと有効長さの3つで構成されている
その先頭アドレスこそが*const T
それを得るにはvec.as_ptr()を使う
ちなみにvec.as_slice()でスライス&[T]つまり先頭アドレスと有効長のペアが得られる
Vec<T>という構造体は先頭アドレスと確保長さと有効長さの3つで構成されている
その先頭アドレスこそが*const T
それを得るにはvec.as_ptr()を使う
ちなみにvec.as_slice()でスライス&[T]つまり先頭アドレスと有効長のペアが得られる
742デフォルトの名無しさん
2026/02/19(木) 19:09:14.78ID:Rn8V4f5h AIってPythonとRust苦手そう
743デフォルトの名無しさん
2026/02/19(木) 19:19:09.51ID:S0W7Yby7 Pythonについては全くそんなことはなく、なんならClaude CodeやCodexといったエージェントがデータを加工したいと考えたら
Pythonを自律的に書いて実行しやがるレベルで得意
Rustはまだコンパイルエラーの頻度が比較的高いが、エージェントなら自分でエラー読んで自分で直してくれる
Pythonを自律的に書いて実行しやがるレベルで得意
Rustはまだコンパイルエラーの頻度が比較的高いが、エージェントなら自分でエラー読んで自分で直してくれる
744デフォルトの名無しさん
2026/02/19(木) 19:24:46.95ID:M452rQNZ rustて一番使われてるのwebバックエンドだしなんか中途半端よな
745デフォルトの名無しさん
2026/02/19(木) 19:36:27.65ID:/2EnFzsi >>736
これなんでコンパイルエラーにしないんだろ?
これなんでコンパイルエラーにしないんだろ?
746デフォルトの名無しさん
2026/02/19(木) 19:47:55.26ID:nI94p44k AIは高級言語が得意だそうだ(本人談)
一方電子回路とかラダー回路とか、大の苦手だとよ
結局テキストベースで多数派を選んで試行錯誤してるに過ぎない
論理的に考えてやってるわけでも何でもないわけだ
あと絵を理論的に修正していく作業も苦手
自分で描いた絵を見ることが出来ないからだそうだw
一方電子回路とかラダー回路とか、大の苦手だとよ
結局テキストベースで多数派を選んで試行錯誤してるに過ぎない
論理的に考えてやってるわけでも何でもないわけだ
あと絵を理論的に修正していく作業も苦手
自分で描いた絵を見ることが出来ないからだそうだw
747デフォルトの名無しさん
2026/02/19(木) 19:58:55.55ID:Rw/o0MM7 どうした急に
748デフォルトの名無しさん
2026/02/19(木) 20:46:42.27ID:fJlQpt7v 別型のポインタのキャストはsized (thin) → unsized (fat)だけ無理そう
unsized→sized(スライス*[T}→先頭要素*T)はメタ情報を捨てる形で許容してる
VecはDerefが絡んでややこしくなるからas_ptr使った方がいいな
https://doc.rust-lang.org/reference/expressions/operator-expr.html#r-expr.as.pointer
unsized→sized(スライス*[T}→先頭要素*T)はメタ情報を捨てる形で許容してる
VecはDerefが絡んでややこしくなるからas_ptr使った方がいいな
https://doc.rust-lang.org/reference/expressions/operator-expr.html#r-expr.as.pointer
749デフォルトの名無しさん
2026/02/19(木) 23:16:18.36ID:/ShQkq21 >>748
おお〜これはバグの温床になるな
おお〜これはバグの温床になるな
750デフォルトの名無しさん
2026/02/20(金) 16:06:06.61ID:JaPthDTw &raw const v
&raw mut v
はどうなんだろ
&raw mut v
はどうなんだろ
751デフォルトの名無しさん
2026/02/21(土) 09:30:40.30ID:ftaqCpnX752デフォルトの名無しさん
2026/02/22(日) 12:11:41.68ID:C/K3j3au753デフォルトの名無しさん
2026/02/22(日) 12:44:48.71ID:sV/YX2oD &o.0 as *const Vec<Fuga> as *const Fuga とか
&o.0 as *const Vec<Fuga> とかを
&raw o.0 とか(1)
&raw o に(2)したところで
(1)や(2)が &raw o.0[0] や &o.0[0] as *const Fuga になる訳じゃなくないか
&o.0 as *const Vec<Fuga> とかを
&raw o.0 とか(1)
&raw o に(2)したところで
(1)や(2)が &raw o.0[0] や &o.0[0] as *const Fuga になる訳じゃなくないか
754デフォルトの名無しさん
2026/02/23(月) 08:10:37.43ID:XzBA4EzZ755デフォルトの名無しさん
2026/02/24(火) 14:23:07.63ID:3PH4s5Yz Servo vs. Ladybird?
Ladybird adopts Rust, with help from AI - Ladybird
https://ladybird.org/posts/adopting-rust/
Ladybird adopts Rust, with help from AI - Ladybird
https://ladybird.org/posts/adopting-rust/
756デフォルトの名無しさん
2026/02/24(火) 14:33:51.51ID:rUeO0tIz757デフォルトの名無しさん
2026/02/24(火) 23:14:14.55ID:c2Ni5UiC AI使えば2週間でRust移植終わるんなら、ChromiumをAIでRustにしたほうが生産性よくない?
758デフォルトの名無しさん
2026/02/25(水) 00:40:27.24ID:MPw0+/GH >>757
AIに1万以上課金して使ったことあるが全くコンパイルエラー直せなかった
もう2年前ぐらいだけどドブに1万円札落としたとき並に衝撃的すぎてそれ以来手でコード書いてる
妄想もほどほどに。Rustは無理だわ
AIに1万以上課金して使ったことあるが全くコンパイルエラー直せなかった
もう2年前ぐらいだけどドブに1万円札落としたとき並に衝撃的すぎてそれ以来手でコード書いてる
妄想もほどほどに。Rustは無理だわ
759デフォルトの名無しさん
2026/02/25(水) 00:42:18.01ID:Fvf+dJV2 2年前と今じゃさすがに別物や
360度違う
360度違う
760デフォルトの名無しさん
2026/02/25(水) 00:47:19.88ID:MPw0+/GH そうなの?延々自分でコード破壊し、変数のライフタイムすらも理解してない雰囲気で無茶苦茶にコードいじって数十個コンパイルエラー発生、
エラーが多すぎるのでgit restoreとか言って全部作業抹消するという謎
お金は普通に請求1万以上、お前自分で書いたコード全部消したやん、、、
呆れて呆然とした
エラーが多すぎるのでgit restoreとか言って全部作業抹消するという謎
お金は普通に請求1万以上、お前自分で書いたコード全部消したやん、、、
呆れて呆然とした
761デフォルトの名無しさん
2026/02/25(水) 07:34:14.10ID:0x5jKylI まぁ2年前ならそんなもんじゃない?
半年前でもだいぶ昔の話だねってくらいの発展速度だからな
半年前でもだいぶ昔の話だねってくらいの発展速度だからな
762デフォルトの名無しさん
2026/02/25(水) 07:59:23.70ID:FdmLYENu 戦前の人間が「電子製品は信用ならん」と言ってるくらいには昔の話だね
763デフォルトの名無しさん
2026/02/25(水) 08:04:46.99ID:MPw0+/GH rust ver.1.80 ぐらいの時期だから全然昔じゃないし
おまいらだって昨日のことのように過去を語るやん
10年前の話をしてるわけじゃないぞ?
10年前なら確かに公開されてるクレートも少なかったし色々情報少なかったが2年前と今日だとrust関連の情報はそんな変わらんやん
おまいらだって昨日のことのように過去を語るやん
10年前の話をしてるわけじゃないぞ?
10年前なら確かに公開されてるクレートも少なかったし色々情報少なかったが2年前と今日だとrust関連の情報はそんな変わらんやん
764デフォルトの名無しさん
2026/02/25(水) 08:18:30.95ID:DBTlbj1A そうだね、おじいちゃん
765デフォルトの名無しさん
2026/02/25(水) 08:18:59.16ID:UOfUspbY そりゃRustと生成AIじゃ全然時間感覚が違うから
Rustの2年前は最近だけど生成AIなら大昔よ
別に必ずしも最先端に追従すべきとも思わんけど
最近の事情を知らずに「2年前は~」とか言ってると
またおじいちゃんがなんか言ってる、
みたいに受け取られるので言わないほうがいいよ
Rustの2年前は最近だけど生成AIなら大昔よ
別に必ずしも最先端に追従すべきとも思わんけど
最近の事情を知らずに「2年前は~」とか言ってると
またおじいちゃんがなんか言ってる、
みたいに受け取られるので言わないほうがいいよ
766デフォルトの名無しさん
2026/02/25(水) 08:20:58.69ID:SMP/b+22 生成AIの性能が今よりずっと低かった、という話じゃないの?
767デフォルトの名無しさん
2026/02/25(水) 09:25:13.35ID:WvnNIYYj 2年前だとCopilot用途でも微妙だった時代か
業務でAIエージェントを平行稼働させて1行もコード書かないのは当たり前で
生成物もレビューしたつもりでほぼ手直し無しでコミットする今日とは
幼稚園児と社会人ぐらいの差はあるな
業務でAIエージェントを平行稼働させて1行もコード書かないのは当たり前で
生成物もレビューしたつもりでほぼ手直し無しでコミットする今日とは
幼稚園児と社会人ぐらいの差はあるな
768デフォルトの名無しさん
2026/02/25(水) 10:16:01.93ID:wlxx4maV AIあるならRustいらないよね
769デフォルトの名無しさん
2026/02/25(水) 10:29:15.32ID:P3AkPFQR AIは人間のようにコンパイルエラーを出し、人間のように直す
固い言語は、AIにも人間にも必要
固い言語は、AIにも人間にも必要
770デフォルトの名無しさん
2026/02/25(水) 11:05:03.22ID:wlxx4maV ?
771デフォルトの名無しさん
2026/02/25(水) 11:34:21.63ID:Ahl4/FG+ どのモデルがRustが得意とかあるなら知りたいかも
772デフォルトの名無しさん
2026/02/25(水) 14:14:48.67ID:MOGILlKo >延々自分でコード破壊し、変数のライフタイムすらも理解してない
めっちゃ判ります
めっちゃ判ります
773デフォルトの名無しさん
2026/02/25(水) 14:15:57.39ID:MOGILlKo >>771
関数型で一方通行でmut無しとかは向いてると思うよ
関数型で一方通行でmut無しとかは向いてると思うよ
774デフォルトの名無しさん
2026/02/25(水) 16:08:16.36ID:yKGm4nBM お前らナイトリービルドつかってるやつ何%くらいおる?
775デフォルトの名無しさん
2026/03/02(月) 09:09:11.27ID:Qk4Jowt/ rustのフリーランス案件見たことない
需要あるのか?
今覚えてるとこだけど
仕事に繋がらないとモチベが保てない
需要あるのか?
今覚えてるとこだけど
仕事に繋がらないとモチベが保てない
776デフォルトの名無しさん
2026/03/02(月) 09:51:46.08ID:Tdclyok1 国内じゃむりぽ
英語使えて外資でリモートならありそう
英語使えて外資でリモートならありそう
777デフォルトの名無しさん
2026/03/02(月) 10:53:37.44ID:lEbKv3qe 777get
778デフォルトの名無しさん
2026/03/02(月) 19:21:03.31ID:Qk4Jowt/ AIでコード生成するなら学習資産がある言語が有利だから
やっぱC/C++の覇権が続くのかなぁ?
やっぱC/C++の覇権が続くのかなぁ?
779デフォルトの名無しさん
2026/03/02(月) 19:38:21.92ID:xcICWUoA >>778
意外かもしれないが数テラバイト程度の品質の高いコードがあれば AI が学習するには充分だし過剰にたくさんあっても処理しきらない。
質の低いコードからは質の低いやり方も学んでしまうので闇雲に分量があれば良いというわけでもない。
意外かもしれないが数テラバイト程度の品質の高いコードがあれば AI が学習するには充分だし過剰にたくさんあっても処理しきらない。
質の低いコードからは質の低いやり方も学んでしまうので闇雲に分量があれば良いというわけでもない。
780デフォルトの名無しさん
2026/03/03(火) 00:24:03.23ID:gio+EDYS >>779
たとえが悪すぎる
良い料理人やシェフはかならず分厚いレシピ本を何冊も買って読んでる
下手な料理人は我流でやる
これと人工知能って全く一緒でレシピば多いほど良い
ネタ元のレシピが少ないとアイデアの引き出しも少ないからうまい料理は作れない
たとえが悪すぎる
良い料理人やシェフはかならず分厚いレシピ本を何冊も買って読んでる
下手な料理人は我流でやる
これと人工知能って全く一緒でレシピば多いほど良い
ネタ元のレシピが少ないとアイデアの引き出しも少ないからうまい料理は作れない
781デフォルトの名無しさん
2026/03/03(火) 06:49:47.16ID:kgicJrQR @[email protected] 🔗 https://social.rust-lang.org/users/rust/statuses/116161587093926891
-
RE: https://social.rust-lang.org/@rust/115565961664226194
The results of the 2025 State of Rust Survey are now available! 📊
https://blog.rust-lang.org/2026/03/02/2025-State-Of-Rust-Survey-results/
-
RE: https://social.rust-lang.org/@rust/115565961664226194
The results of the 2025 State of Rust Survey are now available! 📊
https://blog.rust-lang.org/2026/03/02/2025-State-Of-Rust-Survey-results/
782デフォルトの名無しさん
2026/03/03(火) 06:54:19.74ID:kgicJrQR783デフォルトの名無しさん
2026/03/03(火) 07:52:41.35ID:Ui/HNf2k >780
どうだろうな
将棋などのゲームの世界では定石をたくさん用意するよりもモンテカルロ木探索のような力技の方が良い結果を出せるようになってしまった。
コーディングでもそういうことが起きるかも。
どうだろうな
将棋などのゲームの世界では定石をたくさん用意するよりもモンテカルロ木探索のような力技の方が良い結果を出せるようになってしまった。
コーディングでもそういうことが起きるかも。
784デフォルトの名無しさん
2026/03/03(火) 10:37:35.92ID:KP8f8oK3785デフォルトの名無しさん
2026/03/03(火) 10:46:11.60ID:FieZNE0k >>780
いいえ。
学習の分量は一定量を越えると急激に質が良くなります (いわゆる層転移) がその一定量を越えてからは量が質に与える影響は鈍化します。
その一定量に届くラインまでにどれだけ質の良い学習素材を用意できるかがキモで、学習量が多ければ多いほど良いということはないです。 少なくとも計算量 (それに必要な電力コストや時間) とのトレードオフで割に合わないです。
いまや Rust は充分に「一定量」の素材はあるので C/C++ に比べて AI の質が劣ることはないです。
いいえ。
学習の分量は一定量を越えると急激に質が良くなります (いわゆる層転移) がその一定量を越えてからは量が質に与える影響は鈍化します。
その一定量に届くラインまでにどれだけ質の良い学習素材を用意できるかがキモで、学習量が多ければ多いほど良いということはないです。 少なくとも計算量 (それに必要な電力コストや時間) とのトレードオフで割に合わないです。
いまや Rust は充分に「一定量」の素材はあるので C/C++ に比べて AI の質が劣ることはないです。
786デフォルトの名無しさん
2026/03/03(火) 11:03:01.16ID:AKCntDuk787デフォルトの名無しさん
2026/03/03(火) 11:58:07.21ID:qeORX8NI そこら辺のAIは、論理的に思考して答え言ってないからな
世の中に出回ってるテキストベースの情報を見てよさげなのを答えてるだけだからな
情報少なければ質も悪い
世の中に出回ってるテキストベースの情報を見てよさげなのを答えてるだけだからな
情報少なければ質も悪い
788デフォルトの名無しさん
2026/03/03(火) 12:27:01.49ID:cfupQG0m >>787
どのへんのAIだと品質いいの?
どのへんのAIだと品質いいの?
789デフォルトの名無しさん
2026/03/03(火) 12:51:44.48ID:lsDo16z9 >>787
>世の中に出回ってるテキストベースの情報を見てよさげなのを答えてるだけだからな
この前提が正しいと仮定しても他の言語に比べてRustの質が低い理由にはならないだろ
その程度の論理的思考もできんのか?
もちろん前提も間違ってるんだけど
>世の中に出回ってるテキストベースの情報を見てよさげなのを答えてるだけだからな
この前提が正しいと仮定しても他の言語に比べてRustの質が低い理由にはならないだろ
その程度の論理的思考もできんのか?
もちろん前提も間違ってるんだけど
790デフォルトの名無しさん
2026/03/03(火) 13:02:15.04ID:rtyBzEfN >>789
>>世の中に出回ってるテキストベースの情報を見てよさげなのを答えてるだけだからな
>この前提~
>もちろん前提も間違ってるんだけど
確認だけど「よさげなのを答えてるだけ」の部分を否定してるだけたよな
「世の中に出回ってるテキストベースの情報」の質と量がある臨界点以上集まらないと
AIの品質がシンギュラリティレベルを超えないから
もちろんプログラミング言語の特性によってその臨界点が遠い場合も有り得る
>>世の中に出回ってるテキストベースの情報を見てよさげなのを答えてるだけだからな
>この前提~
>もちろん前提も間違ってるんだけど
確認だけど「よさげなのを答えてるだけ」の部分を否定してるだけたよな
「世の中に出回ってるテキストベースの情報」の質と量がある臨界点以上集まらないと
AIの品質がシンギュラリティレベルを超えないから
もちろんプログラミング言語の特性によってその臨界点が遠い場合も有り得る
791デフォルトの名無しさん
2026/03/03(火) 13:02:31.43ID:duhBFzhd AIはプログラム言語の意味は理解できてもそれらを使って最適にプログラミングする能力は無い
思考してないし検証もしてないからな
将棋プログラムのような最適手を試行し学習する手段で回答なんかしない
それ用に作り上げたAIだけがそういうことが出来る
思考してないし検証もしてないからな
将棋プログラムのような最適手を試行し学習する手段で回答なんかしない
それ用に作り上げたAIだけがそういうことが出来る
792デフォルトの名無しさん
2026/03/03(火) 13:04:06.36ID:duhBFzhd だからラダーとか電子回路のことを聞くとノータリンだ
なぜかと聞けばAIが答えてくれる
苦手なんだとよw
なぜかと聞けばAIが答えてくれる
苦手なんだとよw
793デフォルトの名無しさん
2026/03/03(火) 13:05:44.93ID:rtyBzEfN ここでのシンギュラリティとは世の中が変わると言う話ではなく
AIがデータ作成と検証(仮説理論と実験)を繰り返して自律的に進化していく段階をイメージしている
AIがデータ作成と検証(仮説理論と実験)を繰り返して自律的に進化していく段階をイメージしている
794デフォルトの名無しさん
2026/03/03(火) 13:09:40.98ID:g/jMsKup795デフォルトの名無しさん
2026/03/03(火) 13:10:25.58ID:8ikcv3ew >「世の中に出回ってるテキストベースの情報」の質と量がある臨界点以上集まらないと
>AIの品質がシンギュラリティレベルを超えないから
・・・・・
>AIの品質がシンギュラリティレベルを超えないから
・・・・・
796デフォルトの名無しさん
2026/03/03(火) 13:12:53.80ID:Ttfq0zXr >>791
思考できないなら理解もできまい
思考できないなら理解もできまい
797デフォルトの名無しさん
2026/03/03(火) 13:30:35.23ID:duhBFzhd テキストベースでの思考と理解しかしていない
だからプログラミングしてるのではなく、この命令の後はこの文字が来るという学習の結果をずらずら並べてるに過ぎない
普通のプログラミングならそれで充分だしな
でも誰もやったことがないアルゴリズムの発見とかは出来ない
それが出来るのはそういう目的で作られたAIにしかできない
だからプログラミングしてるのではなく、この命令の後はこの文字が来るという学習の結果をずらずら並べてるに過ぎない
普通のプログラミングならそれで充分だしな
でも誰もやったことがないアルゴリズムの発見とかは出来ない
それが出来るのはそういう目的で作られたAIにしかできない
798デフォルトの名無しさん
2026/03/03(火) 13:33:25.45ID:duhBFzhd AI は「プログラミングができる」が、
“思考してからコードを出す”タイプではなく、
“コードを予測して出す”タイプが主流です。
ただし、形式手法と統合された AI は
安全性・再現性・境界条件の明確化を満たす方向に進化しており、
制御系や PLC にも適用可能な未来が見えています。
↑AIの回答
“思考してからコードを出す”タイプではなく、
“コードを予測して出す”タイプが主流です。
ただし、形式手法と統合された AI は
安全性・再現性・境界条件の明確化を満たす方向に進化しており、
制御系や PLC にも適用可能な未来が見えています。
↑AIの回答
799デフォルトの名無しさん
2026/03/03(火) 13:34:36.80ID:duhBFzhd AI は Python、C、C++、JavaScript などの 高級言語のコードをテキストとして直接生成できます。
• 関数やクラスの作成
• アルゴリズムの実装
• バグ修正の提案
• 既存コードのリファクタリング
ただし内部で マシン語を扱ったり、コンパイラのように構文木を厳密に構築しているわけではありません。
統計モデルとして「次に来るべきトークン」を予測しているだけです。
↑AIの回答
• 関数やクラスの作成
• アルゴリズムの実装
• バグ修正の提案
• 既存コードのリファクタリング
ただし内部で マシン語を扱ったり、コンパイラのように構文木を厳密に構築しているわけではありません。
統計モデルとして「次に来るべきトークン」を予測しているだけです。
↑AIの回答
800デフォルトの名無しさん
2026/03/03(火) 13:35:35.37ID:duhBFzhd 最近は、単なるテキスト生成を超えて、思考プロセスを強化した AI が登場しています。
• Tree-of-Thought:複数のコード案を分岐させて探索
• Self-Debug:自分で生成したコードをテストして修正
• Compiler Feedback Loop:コンパイルエラーを読み取り再生成
• Program-of-Thought:アルゴリズムをコードとして推論
これにより、従来より 論理性・再現性・整合性 が向上しています。
↑AIの回答
• Tree-of-Thought:複数のコード案を分岐させて探索
• Self-Debug:自分で生成したコードをテストして修正
• Compiler Feedback Loop:コンパイルエラーを読み取り再生成
• Program-of-Thought:アルゴリズムをコードとして推論
これにより、従来より 論理性・再現性・整合性 が向上しています。
↑AIの回答
801デフォルトの名無しさん
2026/03/03(火) 13:45:46.03ID:rITZOFdm AIで調べものをしたりAI回答をコピペするのは構わない
ただしそこから直接的に見出した自分の意見を「他人も納得し得る形」にしないと意味ない
ただしそこから直接的に見出した自分の意見を「他人も納得し得る形」にしないと意味ない
802デフォルトの名無しさん
2026/03/03(火) 14:04:50.55ID:9UZukxKC >>797
どこまでいってもやってることは計算で思考や理解はしていないかと
どこまでいってもやってることは計算で思考や理解はしていないかと
803デフォルトの名無しさん
2026/03/03(火) 14:18:14.73ID:vuzqt6ZT AIの回答ペタペタするだけなら人間いらないんだよな
自分で聞くから
OSSにAIに書かせて吟味してないソース投げる馬鹿とお同じ
自分で聞くから
OSSにAIに書かせて吟味してないソース投げる馬鹿とお同じ
804デフォルトの名無しさん
2026/03/03(火) 14:25:57.59ID:M8J9tcnp >>786
万人向けに設計されている AI は自律性が低く指示に対して従順です。
つまり指示の的確さが結果の質に反映されます。
あなたが Rust より C のほうが得意なら AI の生成するコードもそうなりがちです。
AI が生成する Rust コードは C コードより質が高いと感じている人も多いです。
万人向けに設計されている AI は自律性が低く指示に対して従順です。
つまり指示の的確さが結果の質に反映されます。
あなたが Rust より C のほうが得意なら AI の生成するコードもそうなりがちです。
AI が生成する Rust コードは C コードより質が高いと感じている人も多いです。
805デフォルトの名無しさん
2026/03/03(火) 14:47:37.90ID:wN3hmWku806デフォルトの名無しさん
2026/03/03(火) 14:52:44.83ID:Tr0ESCKs >>804
> つまり指示の的確さが結果の質に反映されます。
これが足切りになる層がいる
ザックリした指示で、一発で即完成形で出してくれるのはC/C++かな
Rustでマンデルブロー集合をGPUで計算してPNG出力するプログラムを指示しみてくれ
自分のところではコンパイルが通らないコードが出て来た
> つまり指示の的確さが結果の質に反映されます。
これが足切りになる層がいる
ザックリした指示で、一発で即完成形で出してくれるのはC/C++かな
Rustでマンデルブロー集合をGPUで計算してPNG出力するプログラムを指示しみてくれ
自分のところではコンパイルが通らないコードが出て来た
807デフォルトの名無しさん
2026/03/03(火) 14:57:35.52ID:wN3hmWku808デフォルトの名無しさん
2026/03/03(火) 15:00:09.81ID:UTF77Ts7 ブラウザ上のチャットでコーディングしているおじいちゃん…
809デフォルトの名無しさん
2026/03/03(火) 15:02:32.92ID:wN3hmWku >>806
それはザックリすぎるわ
そのCかC++で出力されたまともなコードをRustに変換させて結果まともなコードになるのであれば
指示次第ではまともなRustのコードを出力できる力はあるということになる
それはザックリすぎるわ
そのCかC++で出力されたまともなコードをRustに変換させて結果まともなコードになるのであれば
指示次第ではまともなRustのコードを出力できる力はあるということになる
810デフォルトの名無しさん
2026/03/03(火) 16:51:28.01ID:xnYkhOI4 赤くなってる奴は無課金チャッピーの出力をメモ帳にコピペして
cargo runを繰り返してる年寄りだということはわかる
とくに考え方を変える必要はないけどAIエージェント前提の話に入ってこないでくれる?
cargo runを繰り返してる年寄りだということはわかる
とくに考え方を変える必要はないけどAIエージェント前提の話に入ってこないでくれる?
811デフォルトの名無しさん
2026/03/03(火) 16:53:54.25ID:KgdJcOpC Rustでコンパイル通らないのはそりゃそうだろうとしか
人間でもなかなか一発で通らないだろ
AIエージェントはエラー見ながら自分で解決するんだよ
人間でもなかなか一発で通らないだろ
AIエージェントはエラー見ながら自分で解決するんだよ
812デフォルトの名無しさん
2026/03/03(火) 17:50:01.27ID:M8J9tcnp 無課金チャットの ChatGPT, Claude, Gemini で判断しているのだとしたら C とか Rust とか関係なく質は低いですよ。
プログラミングをサポートするための調整はされていないからです。
特にコンテキスト長がかなり短いのでまともな大きさのプログラムだと全体の整合性を取ることが出来ません。
作業しながら自分がやっていることを忘れるということなので学習量がどうこうというレベルの話ではないです。
Rust は C に比べて記述が遠回りになりがちな部分もある (結果的にコードの分量が多くなる) と考えればコンテキスト長の限界に引っかかりやすくなるということは多少はあるかもしれないです。
それでもモジュールひとつ分くらいはまともに書ける力はあるので適切に分割すれば極端に悪いコードは生成されないと思うんですけどね。
プログラミングをサポートするための調整はされていないからです。
特にコンテキスト長がかなり短いのでまともな大きさのプログラムだと全体の整合性を取ることが出来ません。
作業しながら自分がやっていることを忘れるということなので学習量がどうこうというレベルの話ではないです。
Rust は C に比べて記述が遠回りになりがちな部分もある (結果的にコードの分量が多くなる) と考えればコンテキスト長の限界に引っかかりやすくなるということは多少はあるかもしれないです。
それでもモジュールひとつ分くらいはまともに書ける力はあるので適切に分割すれば極端に悪いコードは生成されないと思うんですけどね。
813デフォルトの名無しさん
2026/03/03(火) 18:16:25.54ID:FuOdyu6p またコピペかよw
こいつどうしようもねーな
こいつどうしようもねーな
814デフォルトの名無しさん
2026/03/03(火) 20:00:59.45ID:xNoabcwU aiコピペぉぢさんの魅力
815デフォルトの名無しさん
2026/03/03(火) 21:04:23.57ID:bIvmBBlq >>789と790が最高のバカだったな
816デフォルトの名無しさん
2026/03/03(火) 23:35:54.08ID:sPnBeKpG 元々社会にいらないとされていた人間は、AIの力を借りても結局AIがあればいらない人間にしかならないんだよな
817デフォルトの名無しさん
2026/03/03(火) 23:54:32.57ID:MNQJL7yf AIのチューニングや出力結果の調整
が適切に出来るならともかくね
が適切に出来るならともかくね
818デフォルトの名無しさん
2026/03/04(水) 01:10:01.30ID:vspC71jS このスレって、もともとトレイト境界の翻訳が間違ってるとかでレスバしてたのに今度はさらにどうでもいいことでレスバ
過疎化しすぎじゃん
過疎化しすぎじゃん
819デフォルトの名無しさん
2026/03/04(水) 07:02:07.30ID:4OWeHuLG コードを予測してるだけでは、情報量の少ないRustの方が質が悪いのは当然
ちゃんと思考してアルゴリズム考えてコード作成すりゃ同じパフォーマンスになるのも当然
今のAIの実力を知らないからおかしくなる
ちゃんと思考してアルゴリズム考えてコード作成すりゃ同じパフォーマンスになるのも当然
今のAIの実力を知らないからおかしくなる
820デフォルトの名無しさん
2026/03/04(水) 09:13:37.11ID:vLlR32uD 今の生成AIがまるで思考してるかのように
821デフォルトの名無しさん
2026/03/04(水) 09:42:52.06ID:QHvwosAA 思考してるよ
我々の程度の低い脳活動を思考と呼ぶのなら
我々の程度の低い脳活動を思考と呼ぶのなら
822デフォルトの名無しさん
2026/03/04(水) 09:57:17.27ID:KWCerV5u そちらのおっしゃる思考とは
823デフォルトの名無しさん
2026/03/04(水) 09:58:59.10ID:Be7jgWUt そりゃ幼稚園児だって思考して作文くらい書く
でも内容が幼稚だったり真実でなかったり
生成AIはコード予測と言う思考しかしておらず、プログラミングと言う思考はしていない
でも内容が幼稚だったり真実でなかったり
生成AIはコード予測と言う思考しかしておらず、プログラミングと言う思考はしていない
824デフォルトの名無しさん
2026/03/04(水) 10:01:27.10ID:l/jj9Szm 電卓の内部のマイコンが実際には演算なんかやってないのと同じだな
825デフォルトの名無しさん
2026/03/04(水) 10:18:09.24ID:1jEWDt9+826デフォルトの名無しさん
2026/03/04(水) 12:05:32.56ID:AcKGUYjx 人もAIも使わないRust
827デフォルトの名無しさん
2026/03/04(水) 15:00:43.96ID:OrlFWOPZ >>825
俺はHで
俺はHで
828デフォルトの名無しさん
2026/03/05(木) 08:54:58.94ID:uUyDlQ6+ >>825
手が3本必要
手が3本必要
829デフォルトの名無しさん
2026/03/05(木) 09:10:06.73ID:BjPJDcyA >>828
パンツをおろせ
パンツをおろせ
830デフォルトの名無しさん
2026/03/05(木) 10:02:18.77ID:uUyDlQ6+831デフォルトの名無しさん
2026/03/05(木) 13:48:19.71ID:+yoLdZY0 Rustみたいなコンパイルが厳格な言語は
嘘つきまくるAI生成のコードとは
ある意味で親和性いいような気がする
嘘つきまくるAI生成のコードとは
ある意味で親和性いいような気がする
832デフォルトの名無しさん
2026/03/05(木) 15:29:52.02ID:GrZo6tuI ロケット今回も堕ちたよ
Rust使え
Rust使え
833デフォルトの名無しさん
2026/03/05(木) 17:49:25.52ID:+yNdHe3l AIって言わば記録力だけがいいだけの馬鹿ってやつで
日本の大卒者の大多数と同じ
使えないやつの筆頭だがうまく使えば役に立つ
任せて丸投げは危険
日本の大卒者の大多数と同じ
使えないやつの筆頭だがうまく使えば役に立つ
任せて丸投げは危険
834デフォルトの名無しさん
2026/03/05(木) 22:28:00.78ID:TdyH89si >>832
手が回らないからかニッチなそう言う組込みはターゲットにしてない
gcc, llvm のターゲットにはなっててもRustのターゲットはさらに少ない
SpaceXなんかはx86の今どきなら最低違いの使ってるらしいが
使うチップも宇宙線対策でそんな密度高いの使わないので重い汎用OSよりも生バイナリ動かせるほうが嬉しい
一発コケると洒落ならんから信頼性、そして準ずる実績とか欲しい
新しいことやってこけるくらいなら既存のCやHDLの資産使おうになる
スペースワン、カイロスはその資産もないんでトライ・アンド・エラー必要
金あったSpaceXでさえ4発目でようやくあがった
手が回らないからかニッチなそう言う組込みはターゲットにしてない
gcc, llvm のターゲットにはなっててもRustのターゲットはさらに少ない
SpaceXなんかはx86の今どきなら最低違いの使ってるらしいが
使うチップも宇宙線対策でそんな密度高いの使わないので重い汎用OSよりも生バイナリ動かせるほうが嬉しい
一発コケると洒落ならんから信頼性、そして準ずる実績とか欲しい
新しいことやってこけるくらいなら既存のCやHDLの資産使おうになる
スペースワン、カイロスはその資産もないんでトライ・アンド・エラー必要
金あったSpaceXでさえ4発目でようやくあがった
835デフォルトの名無しさん
2026/03/06(金) 10:52:27.36ID:eqcs8cMN 結論 rustは誰も使わない
836デフォルトの名無しさん
2026/03/06(金) 11:47:16.85ID:oAg7GdjP これだけRustが普及している状況で化石か?
837デフォルトの名無しさん
2026/03/06(金) 15:02:07.32ID:UfOJQwwp >>834
新しいことやらなくてもコケてるやん
新しいことやらなくてもコケてるやん
838デフォルトの名無しさん
2026/03/06(金) 22:45:59.43ID:q/oKxOvs 5ch net ドメイン剥奪ワロス
839デフォルトの名無しさん
2026/03/07(土) 09:47:57.16ID:t4G626i5 「航行は全て順調だったが自爆装置が勝手に・・・」前も同じ失敗してたよな
840デフォルトの名無しさん
2026/03/07(土) 22:59:06.55ID:ZL4wM2mV 自爆すべきときにしないよりはすべきでないときにするほうがマシではある。
841デフォルトの名無しさん
2026/03/08(日) 09:51:44.13ID:PgMm4yxY const HOGE: [HogeType; 4] = [HogeType{}, HogeType{}, HogeType{}, HogeType{}];
は通るのに
const HOGE = [HogeType{}, HogeType{}, HogeType{}, HogeType{}];
は : [HogeType; 4] を付けろと言われるのがうざいです
const とは言え要素数は変更したい(動的じゃなくて静的)とき
(4なら良いけど400とか有ったら)毎回数えないといけないのは面倒
せめて
const HOGE: [HogeType; _] = [HogeType{}, HogeType{}, HogeType{}, HogeType{}];
位に省略出来たら良いのに
は通るのに
const HOGE = [HogeType{}, HogeType{}, HogeType{}, HogeType{}];
は : [HogeType; 4] を付けろと言われるのがうざいです
const とは言え要素数は変更したい(動的じゃなくて静的)とき
(4なら良いけど400とか有ったら)毎回数えないといけないのは面倒
せめて
const HOGE: [HogeType; _] = [HogeType{}, HogeType{}, HogeType{}, HogeType{}];
位に省略出来たら良いのに
842デフォルトの名無しさん
2026/03/08(日) 10:37:41.42ID:wA2ynCho const HOGE: &[HogeType] = &[HogeType{}, HogeType{}, HogeType{}, HogeType{}];
843デフォルトの名無しさん
2026/03/08(日) 11:54:08.42ID:AiHrPN7l 普及してるというより、いろんなところにこっそり入り込ませてる感じ。
844デフォルトの名無しさん
2026/03/08(日) 13:22:26.53ID:/qWzUlZb git clone xxx/rust.git
cd rust
du -sh .
/mnt/vms/GIT/RUST/rust
16G .
branch を stable に変更すると src/gcc をまるごと(3G弱)取得しようとするし
アタマになにわいてんだよゴミ言語
cd rust
du -sh .
/mnt/vms/GIT/RUST/rust
16G .
branch を stable に変更すると src/gcc をまるごと(3G弱)取得しようとするし
アタマになにわいてんだよゴミ言語
845デフォルトの名無しさん
2026/03/08(日) 13:36:34.19ID:QH+Bwu9+ 何のためにcloneしてるの?
そして何を文句言ってるの?
そして何を文句言ってるの?
846デフォルトの名無しさん
2026/03/08(日) 13:46:31.24ID:qxEk/aR3847デフォルトの名無しさん
2026/03/08(日) 17:36:33.58ID:Sbf6b4OL 巨大リポジトリを丸ごとクローンしようとするとは
アタマになにわいてんだよブーメラン刺さってますよ
アタマになにわいてんだよブーメラン刺さってますよ
848デフォルトの名無しさん
2026/03/08(日) 18:07:53.11ID:luHwuS6f GIT ってサイズが不明でレジュームもできない、
数GをDLして途中で切断されると全て無駄になるし。
数GをDLして途中で切断されると全て無駄になるし。
849デフォルトの名無しさん
2026/03/08(日) 18:09:19.31ID:luHwuS6f llvm-project も gcc も、大半のファイルは使わないのに
態々rust が submodule としてフルで飼ってるし……
態々rust が submodule としてフルで飼ってるし……
850デフォルトの名無しさん
2026/03/08(日) 18:11:22.69ID:luHwuS6f ま、できるだけ排除してみますよ……
851デフォルトの名無しさん
2026/03/08(日) 18:31:43.60ID:6LQjTSRb 普通の用途でgit cloneする必要がない
どうしても必要な用途ならば文句を言うのはおかしい
どうしても必要な用途ならば文句を言うのはおかしい
852デフォルトの名無しさん
2026/03/08(日) 19:05:51.71ID:Sbf6b4OL 何をしたいのか知らんけど―depth=1とかでいいでしょ
rust自体をビルドする時もpre-builtのllvmで問題ない
あんまり古いバージョンでは駄目だろうが
rust自体をビルドする時もpre-builtのllvmで問題ない
あんまり古いバージョンでは駄目だろうが
853デフォルトの名無しさん
2026/03/09(月) 08:27:23.99ID:EtAo0pjn >>849
連投するようなお前が言えることか?
LLVM のインターフェイスはそんなに安定してないんだよ。
場合によっては Rust のために LLVM を修正することもある。
足並みを揃えないとコンパイルすらできないから一体にしとかないと仕方ないんだ。
良いとは言わんが、そうしているのは理由がある。
連投するようなお前が言えることか?
LLVM のインターフェイスはそんなに安定してないんだよ。
場合によっては Rust のために LLVM を修正することもある。
足並みを揃えないとコンパイルすらできないから一体にしとかないと仕方ないんだ。
良いとは言わんが、そうしているのは理由がある。
854デフォルトの名無しさん
2026/03/09(月) 10:27:27.29ID:XmKYp6SM llvm-project をまるごと飼っておく理由はどこにもないな。
855デフォルトの名無しさん
2026/03/09(月) 10:41:34.33ID:y3Qo4WIR windows-rs の windows-numerics の実装ってとてつもなくセンス悪いね
しかも全然未完成ジャマイカ
しかも全然未完成ジャマイカ
856デフォルトの名無しさん
2026/03/09(月) 10:55:21.24ID:XVPzdn5K プログラマで使ってるやつも少ないだろうしwindowsなんかその程度でええやろ
ms社員でもmac多いし
ms社員でもmac多いし
857デフォルトの名無しさん
2026/03/09(月) 11:11:33.30ID:HGNMBh8y >>855
マイクロソフトが作った剥き出し作品だから
マイクロソフトが作った剥き出し作品だから
858デフォルトの名無しさん
2026/03/09(月) 13:43:07.71ID:IzizxnOu 近頃は .cargo 以下に 勝手に git clone するのもあるのなw
859デフォルトの名無しさん
2026/03/09(月) 14:37:46.12ID:BcOaz4JO directx_math が正解か
860デフォルトの名無しさん
2026/03/09(月) 17:32:51.90ID:ZeHnxVQL use directx_math::*; しちゃえ
861デフォルトの名無しさん
2026/03/09(月) 17:50:21.61ID:EtAo0pjn >>855
windows-rs は API の素直な投射を意図してる。
Rust 的には筋が悪いことも多いけど Windows の API のドキュメントを見ながら使うにはそのほうが良い。
windows-rs のドキュメントなんてなんの説明もないし。
windows-rs は API の素直な投射を意図してる。
Rust 的には筋が悪いことも多いけど Windows の API のドキュメントを見ながら使うにはそのほうが良い。
windows-rs のドキュメントなんてなんの説明もないし。
862デフォルトの名無しさん
2026/03/10(火) 09:35:48.90ID:e5EmWKMm Rustの型チェックは有難いが無駄に型が増え過ぎて組み合わせ爆発になるな
863デフォルトの名無しさん
2026/03/10(火) 09:52:23.99ID:b0S6IJua ジェネリックなコードしか書かなくて済むから組み合わせ爆発は起きない
864デフォルトの名無しさん
2026/03/10(火) 11:01:47.52ID:CEuRkOn+ ジェネリックなコードを書くために構造体 × トレイトの組み合わせ爆発が起きる
Rustでは構造上避けられない問題
Rustでは構造上避けられない問題
865デフォルトの名無しさん
2026/03/10(火) 12:06:46.73ID:Zbk2B5sO866デフォルトの名無しさん
2026/03/10(火) 12:53:27.77ID:Zfw0U02T トレイトの用途が重複してるなぁとなる時はあるね
867デフォルトの名無しさん
2026/03/10(火) 13:08:30.62ID:cQ/KCsiy トレイト実装は掛け算になるからマクロ使わないと辛い
LISPとかに馴染んでるとマクロ使ったコード生成に抵抗少ないけど
C言語寄りの人だと心理的な抵抗があるかもしれない
LISPとかに馴染んでるとマクロ使ったコード生成に抵抗少ないけど
C言語寄りの人だと心理的な抵抗があるかもしれない
868デフォルトの名無しさん
2026/03/10(火) 13:31:48.91ID:1TvFPdP3 >>867
トレイト実装のほとんどは共通化されたデフォルト実装になるから掛け算にならない
各型の個別実装は型固有のrequired methodのみ必要最小限になる
あとは後に必要に応じて型固有の最適化実装があるかどうか程度
トレイト実装のほとんどは共通化されたデフォルト実装になるから掛け算にならない
各型の個別実装は型固有のrequired methodのみ必要最小限になる
あとは後に必要に応じて型固有の最適化実装があるかどうか程度
869デフォルトの名無しさん
2026/03/10(火) 14:36:13.81ID:e5EmWKMm proc_macro2 を外部 crate に置かないといけない仕様はなんでなん
870デフォルトの名無しさん
2026/03/10(火) 15:03:32.14ID:cQ/KCsiy >>869
缶切りが缶詰の中に入ってたら困るから
缶切りが缶詰の中に入ってたら困るから
871デフォルトの名無しさん
2026/03/10(火) 15:03:49.61ID:5VpW+IbG >>869
ひとつのクレート内ではマクロ展開が「全て」完了してからマクロの無いプログラムとしての解釈が始まるという単純化したルールだから同じクレートにあるマクロ定義はそれが必要なタイミングではまだ定義されてないことになる。
このルールは Scheme のマクロとライブラリの仕組みを踏襲してる。
ひとつのクレート内ではマクロ展開が「全て」完了してからマクロの無いプログラムとしての解釈が始まるという単純化したルールだから同じクレートにあるマクロ定義はそれが必要なタイミングではまだ定義されてないことになる。
このルールは Scheme のマクロとライブラリの仕組みを踏襲してる。
872デフォルトの名無しさん
2026/03/10(火) 15:14:02.95ID:Z0ql+IYL >>865
いやもう起きてるじゃん
num crateとか見てごらんよ
num crateの主要な構造体は3個
num crateで定義されたトレイトは17個
そしてその3個の構造体に対するトレイト実装はなんと約1200個
爆発しすぎて草生えるレベル
いやもう起きてるじゃん
num crateとか見てごらんよ
num crateの主要な構造体は3個
num crateで定義されたトレイトは17個
そしてその3個の構造体に対するトレイト実装はなんと約1200個
爆発しすぎて草生えるレベル
873デフォルトの名無しさん
2026/03/10(火) 15:57:21.22ID:28BSIgk8 axumの自由でコンパクトすぎる設計って肥大化すると結局ワンパターンになる
フレームワークってそんなに自由じゃなくてもいいよね
フレームワークってそんなに自由じゃなくてもいいよね
874デフォルトの名無しさん
2026/03/10(火) 16:21:46.94ID:NFLCjIVK875デフォルトの名無しさん
2026/03/10(火) 17:11:15.39ID:5VpW+IbG 数値型を表すトレイトは標準ライブラリに有って欲しいなぁとは思う。
876デフォルトの名無しさん
2026/03/11(水) 16:37:43.90ID:BII56HKn crates の破綻
877デフォルトの名無しさん
2026/03/12(木) 07:20:10.89ID:GDFGiQDP headless_chromeだけど
仕様上、頻繁に接続切れるのは仕方ないにしても
何でエラーをanyhowで返してくるんや
めちゃくちゃエラー処理しにくいがな
皆もlibはthiserrorとか使ってくれな
仕様上、頻繁に接続切れるのは仕方ないにしても
何でエラーをanyhowで返してくるんや
めちゃくちゃエラー処理しにくいがな
皆もlibはthiserrorとか使ってくれな
878デフォルトの名無しさん
2026/03/12(木) 08:11:36.96ID:LggIehaH >>877
ライブラリがanyhow::Errorを返すことは禁止されている
anyhow::Errorはimpl std::error::Errorを実装していないため他のエラー型への自動変換や他のエラー型の中にdyn収容などができないためだ
例えばstd::io::Errorのnew(kind, error)やother(error)による収容もトレイト境界を満たせずできない
ライブラリがanyhow::Errorを返すことは禁止されている
anyhow::Errorはimpl std::error::Errorを実装していないため他のエラー型への自動変換や他のエラー型の中にdyn収容などができないためだ
例えばstd::io::Errorのnew(kind, error)やother(error)による収容もトレイト境界を満たせずできない
879デフォルトの名無しさん
2026/03/12(木) 10:25:01.18ID:4w8dve2E880デフォルトの名無しさん
2026/03/12(木) 14:21:55.59ID:p6E29MVL du -sh ~/.cargo
2.1G /home/oresama/.cargo
調子に乗り過ぎ()
2.1G /home/oresama/.cargo
調子に乗り過ぎ()
881デフォルトの名無しさん
2026/03/12(木) 19:54:31.19ID:+rN3DdSP rust遅い
速度計測したらpythonのが速いわ
ライブラリ成熟の差やね
速度計測したらpythonのが速いわ
ライブラリ成熟の差やね
882デフォルトの名無しさん
2026/03/12(木) 20:38:18.55ID:E07tKJsp Rustで書いたバブルソートとPythonで書いたクイックソートならそりゃ後者が早いだろう
だからなんだって話で、AIエージェントがあればもういらないレベルの人間
だからなんだって話で、AIエージェントがあればもういらないレベルの人間
883デフォルトの名無しさん
2026/03/12(木) 23:00:49.43ID:wO9bV9sB884デフォルトの名無しさん
2026/03/12(木) 23:18:41.24ID:XTp9T2EE api程度ならgoでええわ
クレート入れる度にディスク削ってくるから書くのは低レイヤーだけにしとこ
クレート入れる度にディスク削ってくるから書くのは低レイヤーだけにしとこ
885デフォルトの名無しさん
2026/03/12(木) 23:34:35.26ID:K4u+C7vv >>883
現実はもっと遅いよね
現実はもっと遅いよね
886デフォルトの名無しさん
2026/03/12(木) 23:41:23.68ID:LeelrD0z クレートのディスク容量なんて誤差だろ
887デフォルトの名無しさん
2026/03/13(金) 00:11:35.95ID:li//GGm3 512MBのHDDとか使ってるのかな
888デフォルトの名無しさん
2026/03/13(金) 00:35:17.96ID:igjBS7sj ディスクて
889デフォルトの名無しさん
2026/03/13(金) 10:52:14.44ID:v3t9BGXz buildしたらcleanしろよ
890デフォルトの名無しさん
2026/03/13(金) 10:55:30.44ID:C/RuFZJh 複おじと100点おじがAIスレで共闘中www
891デフォルトの名無しさん
2026/03/13(金) 11:36:15.86ID:utxEbVld892デフォルトの名無しさん
2026/03/13(金) 13:49:04.91ID:NxtGLrlC893デフォルトの名無しさん
2026/03/13(金) 15:02:07.32ID:F9UgDvDP あ
俺がRustと勘違いしてDiscordに入ったゲームだ
俺がRustと勘違いしてDiscordに入ったゲームだ
894デフォルトの名無しさん
2026/03/13(金) 18:01:43.33ID:XPrdXGKe 向こうさんもクリエイティブなゲームだから稀にアンジャッシュも起こるとか
895デフォルトの名無しさん
2026/03/14(土) 09:26:29.24ID:A3+zBo28 もう2(5)チャンネルも廃れたな
896デフォルトの名無しさん
2026/03/14(土) 10:38:22.67ID:OdM3R2S0 geminiとかclaudeとかとRustについて駄弁っているほうが有意義だからね。新しい人間はわざわざこんなところに来ない。
897デフォルトの名無しさん
2026/03/14(土) 11:10:38.67ID:sVkUX/u1898デフォルトの名無しさん
2026/03/14(土) 11:40:47.44ID:SPLDb608 >>897
NO
ほぼ全てUnsafe 2.19秒
https://benchmarksgame-team.pages.debian.net/benchmarksgame/program/nbody-rust-9.html
Unsafe控え目 3.24秒
https://benchmarksgame-team.pages.debian.net/benchmarksgame/program/nbody-rust-7.html
Unsafeなし 3.46秒
https://benchmarksgame-team.pages.debian.net/benchmarksgame/program/nbody-rust-3.html
別ソース
https://madnight.github.io/benchmarksgame/nbody.html
NO
ほぼ全てUnsafe 2.19秒
https://benchmarksgame-team.pages.debian.net/benchmarksgame/program/nbody-rust-9.html
Unsafe控え目 3.24秒
https://benchmarksgame-team.pages.debian.net/benchmarksgame/program/nbody-rust-7.html
Unsafeなし 3.46秒
https://benchmarksgame-team.pages.debian.net/benchmarksgame/program/nbody-rust-3.html
別ソース
https://madnight.github.io/benchmarksgame/nbody.html
899デフォルトの名無しさん
2026/03/14(土) 12:04:56.83ID:nsGYDvrv 充分にチューニングしていない素直なコードで処理速度を比較してもそれはそれで公平とは言えないだろう。
言語が違う時点で条件が違うんだから誰もが納得する比較なんて出来ないよ。
この手のマイクロベンチマークは言語の特性を把握するために使うものであって優劣を計るようなものではない。
まあどんな条件でも圧倒的に速いとか圧倒的に遅いとかの極端な優等生・劣等生は別枠になることもあるかもしれないけど。
言語が違う時点で条件が違うんだから誰もが納得する比較なんて出来ないよ。
この手のマイクロベンチマークは言語の特性を把握するために使うものであって優劣を計るようなものではない。
まあどんな条件でも圧倒的に速いとか圧倒的に遅いとかの極端な優等生・劣等生は別枠になることもあるかもしれないけど。
900デフォルトの名無しさん
2026/03/14(土) 12:08:45.85ID:+8fCJ8ku Pythonは辞書を多用する関係で文字列のハッシュ値を内部で保持してるから
素人が何も考えずに移植してRustのHashMapが遅いって文句を言う事象は定期的に発生する
素人が何も考えずに移植してRustのHashMapが遅いって文句を言う事象は定期的に発生する
901デフォルトの名無しさん
2026/03/14(土) 12:10:03.07ID:5dMjP9zC 用途が違うんだから比較するのがおかしい
通勤するときにF1マシン使わんやろ
通勤するときにF1マシン使わんやろ
902デフォルトの名無しさん
2026/03/14(土) 14:19:54.78ID:lcaUGCqR 通勤車両がPythonでF1車両がRustということなら
Rustはコストが高すぎて使われないということになるね。
Rustはコストが高すぎて使われないということになるね。
903デフォルトの名無しさん
2026/03/14(土) 14:31:50.24ID:+8fCJ8ku 通勤車両も利用者が1人だと廃線になりそうだな
904デフォルトの名無しさん
2026/03/14(土) 14:40:53.40ID:+TdW5/94 Rustの爆速幻想もPythonの鈍足説も、実際触ってみると案外そうでもないですよね。結局Rustは「速さ」というより「安全性」に全振りした言語なんだろうな、と。今のAIの実力だとRustをガシガシ書かせるのはまだ厳しいですが、それが可能になる頃には、人間不在の「AIネイティブ言語」が生まれていそうです。界隈も、ガチで必要としている1%の企業と、趣味で楽しむ99%の技術好きが支えているような、歪で面白いパワーバランスを感じます。
905デフォルトの名無しさん
2026/03/14(土) 15:04:37.08ID:0SsO8fq5 Claude opusに設計、インターフェース、テストmd用意してRustで書かせてるけどパフォーマンスは良いよ
GoとRustで悩んだけどRust>Go>Pythonじゃない?用途によるけど
コードをゴリゴリ書くよりテスト買いてAI壁打ち、無理なら手作業って流れだとRustは悪くない
GoとRustで悩んだけどRust>Go>Pythonじゃない?用途によるけど
コードをゴリゴリ書くよりテスト買いてAI壁打ち、無理なら手作業って流れだとRustは悪くない
906デフォルトの名無しさん
2026/03/14(土) 18:56:39.72ID:sVkUX/u1 >>898
Rustの存在価値無いやんけ…
Rustの存在価値無いやんけ…
907デフォルトの名無しさん
2026/03/14(土) 19:08:14.05ID:iVZZDYSc C++こそ至高ということだ
908デフォルトの名無しさん
2026/03/14(土) 19:10:43.77ID:TZ1M6sto Rustって何だったんだろうな
909デフォルトの名無しさん
2026/03/14(土) 19:20:06.31ID:Bsf+mOUP 幻滅期に入った感はあるな
みんなAIエージェントに夢中でもはやコードに対する興味を失ってしまった
みんなAIエージェントに夢中でもはやコードに対する興味を失ってしまった
910デフォルトの名無しさん
2026/03/14(土) 21:19:15.61ID:mcLPnWXP AIエージェント時代はいかにガードレールを敷くかがプログラムコードの役目なので
むしろAIそのもの以外はなんでもかんでもRustにするのが流行りになってる
むしろAIそのもの以外はなんでもかんでもRustにするのが流行りになってる
911デフォルトの名無しさん
2026/03/14(土) 21:34:35.69ID:MFQ06zWd 使いたくても使えない人が
「どうせ酸っぱいに決まってる」
と言ってるような感はあるよね
実際、Rustの利は速度なんかじゃなくて……
あれ、インターホンがなった。ちょっと出てくる。
「どうせ酸っぱいに決まってる」
と言ってるような感はあるよね
実際、Rustの利は速度なんかじゃなくて……
あれ、インターホンがなった。ちょっと出てくる。
912デフォルトの名無しさん
2026/03/15(日) 00:35:17.12ID:9B6BUJ0A Goより全然良いんだけど何でRust嫌われてるんだ?
913デフォルトの名無しさん
2026/03/15(日) 03:22:36.04ID:eKtwcXBI クレート入れると毎回うんこビルドが走るしラスアナが重いので開発体験が悪い
914デフォルトの名無しさん
2026/03/15(日) 05:02:50.33ID:IWZL2wvB 1回だけだろ
どの言語でもライブラリ使うなら同じ
どの言語でもライブラリ使うなら同じ
915デフォルトの名無しさん
2026/03/15(日) 05:37:45.25ID:fCjqnl3D C++屋だから所有権とかライフタイムとかは
unique_ptrみたいなもんだと理解してる
unique_ptrみたいなもんだと理解してる
916デフォルトの名無しさん
2026/03/15(日) 08:21:18.30ID:TBbme1xV 「みたいな」はどういう意味でなのかによる。
917デフォルトの名無しさん
2026/03/15(日) 09:54:22.20ID:ICGx0pi/ そもそも何でこんな書き方がクセあるの?
考え方よりcやc#やkotlinとかから入るとしんどすぎる
考え方よりcやc#やkotlinとかから入るとしんどすぎる
918デフォルトの名無しさん
2026/03/15(日) 11:03:04.70ID:65qh32M1 真っ当に Algol 系文法の後継者に見えるのでそんなにクセつよには感じない。
具体的にどういう記法をクセに感じるの?
具体的にどういう記法をクセに感じるの?
919デフォルトの名無しさん
2026/03/15(日) 11:08:27.23ID:eKtwcXBI 文字列型がなくて文字は全部バイトスライスのzigのほうがやばい
920デフォルトの名無しさん
2026/03/15(日) 13:08:27.55ID:qaLJXPfy Rustの文字列もバイト配列(or Slice)のwrapperだが
921デフォルトの名無しさん
2026/03/15(日) 15:10:05.15ID:BiGyOWHu922デフォルトの名無しさん
2026/03/15(日) 15:30:54.44ID:65qh32M1 ZIG は C/C++ との連携も意図しているので ZIG の側だけで保証しきらないことまで熱心にやる気はないんだと思う。
標準ライブラリと言語全体での強力な保証はなくても ZIG で UTF-8 を扱うこと自体はごく普通に出来るし。
標準ライブラリと言語全体での強力な保証はなくても ZIG で UTF-8 を扱うこと自体はごく普通に出来るし。
923デフォルトの名無しさん
2026/03/15(日) 15:46:29.73ID:Ai9Pv8Na utf8の途中でちょん切れたり不正なutf8になったりするのは困るよね
Rustは安全安心
Rustは安全安心
924デフォルトの名無しさん
2026/03/15(日) 20:08:57.21ID:WvD++qQ8 文字コードが乱立してた太古の時代ならいざ知らず
今の時代に俺の言語では文字列とはこういうものだ!っていうのを言語で定めてないのはかなり厳しい
今の時代に俺の言語では文字列とはこういうものだ!っていうのを言語で定めてないのはかなり厳しい
925デフォルトの名無しさん
2026/03/15(日) 20:34:22.42ID:TBbme1xV 「現代のパソコン」だけを見ているとそう思えるかもしれないけど公官庁のシステムとかは EBCDIC 系の文字コードも結構使われているらしいし、
逆にフリースタンディング環境で文字コードが重要じゃない場面でも保証しなければならないとなったなら足を引っ張る場面もあるんじゃね。
まあ UTF-8 で一貫しているのが楽なのは同意するがそれがいつでもできるわけでもないとも思う。
逆にフリースタンディング環境で文字コードが重要じゃない場面でも保証しなければならないとなったなら足を引っ張る場面もあるんじゃね。
まあ UTF-8 で一貫しているのが楽なのは同意するがそれがいつでもできるわけでもないとも思う。
926デフォルトの名無しさん
2026/03/15(日) 20:54:42.25ID:AL6yhnrX RustはUTF-8以外もencoding_rsとencoding_rs_ioで扱えているよ
927デフォルトの名無しさん
2026/03/15(日) 22:14:32.46ID:kVybsDaK 別にデフォルトでUTF-8と決めたからといって
バイト列や他エンコードを扱えなくなるわけじゃないし
決めないことを正当化できるわけじゃない気がするけどな
バイト列や他エンコードを扱えなくなるわけじゃないし
決めないことを正当化できるわけじゃない気がするけどな
928デフォルトの名無しさん
2026/03/15(日) 22:27:19.60ID:x4ADG6p4 文字数はカウントしたいかも
929デフォルトの名無しさん
2026/03/15(日) 22:45:40.31ID:kmug04Be 文字数とは何か?
これらはそれぞれ1文字でいいのか?
「﷽」
「🏳🌈」
「👨👩👧👦」
これらはそれぞれ1文字でいいのか?
「﷽」
「🏳🌈」
「👨👩👧👦」
930デフォルトの名無しさん
2026/03/15(日) 23:20:55.24ID:FzW39QOD 普通は書記素クラスタの数を数えたいから2,3番目は1文字扱いが自然な実装だろう
一番上はノーコメント
一番上はノーコメント
931デフォルトの名無しさん
2026/03/16(月) 07:20:10.53ID:+F73MsAX 中途半端でも対応してた方が嬉しい場合と、中途半端ならない方がいい場合とがあるよな。そしてそれが立場によって微妙にちがう。
932デフォルトの名無しさん
2026/03/16(月) 09:55:32.33ID:HraqHf6s 既に存在しているファイルに対してサイズ0で上書きしたいときに
A)
let f = "hoge";
let fp = fs::File::create(f)?;
let mut bw = BufWriter::new(fp);
bw.write_all(b"")?;
bw.flush()?;
これでサイズ0のファイルになるのですが
B)
let f = "hoge";
let fp = fs::OpenOptions::new().write(true).append(false).open(f)?;
let mut bw = BufWriter::new(fp);
bw.write_all(b"")?;
bw.flush()?;
だとファイルが更新されません
bw.write_all(b"a")?;
とか1バイトでも書き込むとサイズ1のファイルとして更新出来るのですが
B)の方法で0バイト書き込む感じでサイズ0にするのは無理?
A)
let f = "hoge";
let fp = fs::File::create(f)?;
let mut bw = BufWriter::new(fp);
bw.write_all(b"")?;
bw.flush()?;
これでサイズ0のファイルになるのですが
B)
let f = "hoge";
let fp = fs::OpenOptions::new().write(true).append(false).open(f)?;
let mut bw = BufWriter::new(fp);
bw.write_all(b"")?;
bw.flush()?;
だとファイルが更新されません
bw.write_all(b"a")?;
とか1バイトでも書き込むとサイズ1のファイルとして更新出来るのですが
B)の方法で0バイト書き込む感じでサイズ0にするのは無理?
933デフォルトの名無しさん
2026/03/16(月) 10:50:43.20ID:ySbp9iwl こういうの見て自分で調べて答えを出そうとしか思えないから俺はAIに置き換えられる人材なんだろうなって思った
934デフォルトの名無しさん
2026/03/16(月) 11:09:49.02ID:HyYGipei createで何が不満?って言われそう
935デフォルトの名無しさん
2026/03/16(月) 11:36:17.12ID:Yy1mASgz buffer の中身が空っぽなら書き込まれないのは(そこの動作だけ観れば)正常かも知れないが
OpenOptions::new().write(true).append(false).open が File::create と等価ではないことが問題になるかどうか
OpenOptions::new().write(true).append(false).open が File::create と等価ではないことが問題になるかどうか
936デフォルトの名無しさん
2026/03/16(月) 11:44:13.68ID:O8bNBNMT File::create と等価になるのは
OpenOptions::new().write(true).append(false).truncate(true).open だわ
OpenOptions::new().write(true).append(false).truncate(true).open だわ
937デフォルトの名無しさん
2026/03/16(月) 13:45:50.60ID:AYm4uEFE これにて一件落着
938デフォルトの名無しさん
2026/03/16(月) 13:58:43.77ID:ipeCa2bP >>932
素直にやりたいことだけをメソッド指定すればいい
サイズ0の時刻更新されたファイルを作りたい場合
既にファイルがある場合のみ作りたいならば
std::fs::OpenOptions::new().write(true).truncate(true).open(path)
これはもし事前にファイルがなければNotFoundエラーになる
ファイルがない場合も作りたいならば
std::fs::OpenOptions::new().write(true).create(true).truncate(true).open(path)
これは常に作られる
いずれもこのopenのみでよい
writeやflushは不要
素直にやりたいことだけをメソッド指定すればいい
サイズ0の時刻更新されたファイルを作りたい場合
既にファイルがある場合のみ作りたいならば
std::fs::OpenOptions::new().write(true).truncate(true).open(path)
これはもし事前にファイルがなければNotFoundエラーになる
ファイルがない場合も作りたいならば
std::fs::OpenOptions::new().write(true).create(true).truncate(true).open(path)
これは常に作られる
いずれもこのopenのみでよい
writeやflushは不要
939デフォルトの名無しさん
2026/03/16(月) 16:15:04.46ID:thUj3m8P fs::write("hoge", "");でいいよね
940デフォルトの名無しさん
2026/03/17(火) 11:54:48.64ID:TEC35O2v drop(fs::File::create("hoge")?);
最適化で消されるかな
最適化で消されるかな
941デフォルトの名無しさん
2026/03/20(金) 10:54:21.71ID:gKtq9gXa なんかすさまじく処理系依存な気がする
素直に削除→生成しといた方が余計な心配抱えなくて済みそう
素直に削除→生成しといた方が余計な心配抱えなくて済みそう
942デフォルトの名無しさん
2026/03/20(金) 14:33:26.74ID:tgmqbSxQ943デフォルトの名無しさん
2026/03/20(金) 14:42:28.97ID:U8sOw+Xf 削除→生成は作成日時が新しくなるので用途によってはダメ
処理系依存部分はstdが吸収してくれる建前なので
サポートされてないプラットフォーム向けか
テストでバグが見つかったというのでなければ
fs::writeで十分
存在しない場合にエラーにしたければif existsでok
アトミックじゃないけど問題になるユースケースではない
処理系依存部分はstdが吸収してくれる建前なので
サポートされてないプラットフォーム向けか
テストでバグが見つかったというのでなければ
fs::writeで十分
存在しない場合にエラーにしたければif existsでok
アトミックじゃないけど問題になるユースケースではない
944デフォルトの名無しさん
2026/03/20(金) 14:53:19.55ID:U8sOw+Xf あーfileじゃなくてdirectoryのパターンがあるか
945デフォルトの名無しさん
2026/03/20(金) 15:04:50.42ID:4e1JjiXR >>941
> 素直に削除→生成しといた方が余計な心配抱えなくて済みそう
ファイルをシンボリックリンクにして別ドライブに実体データを退避する使い方があると思うけど
「削除→生成」されたらリンクが壊れるよ
> 素直に削除→生成しといた方が余計な心配抱えなくて済みそう
ファイルをシンボリックリンクにして別ドライブに実体データを退避する使い方があると思うけど
「削除→生成」されたらリンクが壊れるよ
946デフォルトの名無しさん
2026/03/20(金) 15:20:16.86ID:ZQATUU1y947デフォルトの名無しさん
2026/03/20(金) 15:47:52.70ID:U8sOw+Xf948デフォルトの名無しさん
2026/03/20(金) 15:48:35.09ID:NI35hDRW949デフォルトの名無しさん
2026/03/20(金) 15:56:15.76ID:U8sOw+Xf >素直にやりたいことだけをメソッド指定すればいい from >>938
選択肢1: std::fs::OpenOptions::new().write(true).create(true).truncate(true).open(path)
選択肢2: std::fs::write(path, "")
どちらがあなたのやりたいことですか?
選択肢1: std::fs::OpenOptions::new().write(true).create(true).truncate(true).open(path)
選択肢2: std::fs::write(path, "")
どちらがあなたのやりたいことですか?
950デフォルトの名無しさん
2026/03/20(金) 16:00:16.66ID:C3mdLiae どの言語でやっても削除や書き込みは必要なくてopenのモード指定だけで済むよ
元のCのlibcもこうだからね
fd = open(path, O_WRONLY | O_CREAT | O_TRUNC);
close(fd);
Rustでもそのまま1対1に対応するよ
std::fs::OpenOptions::new()
.write(true)
.create(true)
.truncate(true)
.open(path);
もちろんcloseはDropにより自動close
元のCのlibcもこうだからね
fd = open(path, O_WRONLY | O_CREAT | O_TRUNC);
close(fd);
Rustでもそのまま1対1に対応するよ
std::fs::OpenOptions::new()
.write(true)
.create(true)
.truncate(true)
.open(path);
もちろんcloseはDropにより自動close
951デフォルトの名無しさん
2026/03/21(土) 01:39:24.49ID:XA1yQvtN てかそんなしょうもない処理にrust使う必要ないやろ
pythonで書けよ
pythonで書けよ
952デフォルトの名無しさん
2026/03/21(土) 01:56:26.53ID:nkzY5578 どの言語でも誤差
遅いPythonを使うメリットは薄い
遅いPythonを使うメリットは薄い
953デフォルトの名無しさん
2026/03/21(土) 02:02:56.28ID:CiL2YN+l Roc言語はコンパイラをRustからZigへ移行するんだってね
一年前のニュースだけど
理由はビルドがクソ遅いから
一年前のニュースだけど
理由はビルドがクソ遅いから
954デフォルトの名無しさん
2026/03/21(土) 02:48:12.16ID:1qvt0kuz Roc言語はSwiftのようにメモリ解放の基本が参照カウンタ方式だから高速化に限界があって流行らないまま
955デフォルトの名無しさん
2026/03/22(日) 01:07:18.14ID:WcAd0qF3 >>953
RustってC++の何倍くらいビルドが遅い?
RustってC++の何倍くらいビルドが遅い?
956デフォルトの名無しさん
2026/03/22(日) 07:26:35.54ID:hzg2Z5hP >>955
対g++だったら5割程度遅い
対g++だったら5割程度遅い
957デフォルトの名無しさん
2026/03/23(月) 19:15:45.24ID:InxYNOPp >>956
AIは、C/C++ に比べて 2〜3 倍くらいになる事がある、と言っていた。
AIは、C/C++ に比べて 2〜3 倍くらいになる事がある、と言っていた。
958デフォルトの名無しさん
2026/03/24(火) 13:41:29.62ID:7goM5+Kz ヌルポ代入とか比較するときに
let hage: *const Hage = std::ffi::null();
let hoge: *mut Hoge = std::ffi::null_mut();
if hage == std::ffi::null() {...}
if hoge == std::ffi::null_mut() {...}
とか null の方にまでクドクドと mut 付けて区別する必要あるのが面倒
let hage: *const Hage = std::ffi::null();
let hoge: *mut Hoge = std::ffi::null_mut();
if hage == std::ffi::null() {...}
if hoge == std::ffi::null_mut() {...}
とか null の方にまでクドクドと mut 付けて区別する必要あるのが面倒
959デフォルトの名無しさん
2026/03/24(火) 15:43:52.04ID:H16+5cnl >>958
null かどうか判定したいときは null と比較するんじゃなくて is_null を使えばいいよ。
null を入れたいときは default を使う。
高度な推論が出来るんだから推論に頼ればいい。
null かどうか判定したいときは null と比較するんじゃなくて is_null を使えばいいよ。
null を入れたいときは default を使う。
高度な推論が出来るんだから推論に頼ればいい。
960デフォルトの名無しさん
2026/03/25(水) 17:26:18.82ID:ad3FH0UK Rustってネットで持ち上げられてね?
メモリ安全が一人歩きしてC++をRustに書き換えたら完全に安全って思ってる人多そう
https://www.youtube.com/watch?v=NMN9kUUOR1c
メモリ安全が一人歩きしてC++をRustに書き換えたら完全に安全って思ってる人多そう
https://www.youtube.com/watch?v=NMN9kUUOR1c
961デフォルトの名無しさん
2026/03/25(水) 17:27:32.14ID:ad3FH0UK JavaやPythonなんかのランタイムGCありのメモリ安全言語でバグ出してるやつがRust使っても同じようにバグ出す未来しか見えないんだが
962デフォルトの名無しさん
2026/03/25(水) 17:54:03.81ID:mVuzglJK Rustを持ち上げてるやつで実際に業務で使ったことあるやつどれくらいなんだろうな
俺は業務で使ってみたけど微妙な気がするからもう採用しない
俺は業務で使ってみたけど微妙な気がするからもう採用しない
963デフォルトの名無しさん
2026/03/25(水) 18:24:44.01ID:KZGvhoek まあ C++ よりは Rust のほうが良いと思う。
というか C++ がだるい。
というか C++ がだるい。
964デフォルトの名無しさん
2026/03/25(水) 18:31:41.16ID:vwvkeA78 メモリ安全だけどリソース安全じゃ無いからねぇ
結局、失敗経験のあるプログラマが注意深く組み上げる必要がある部分が残ってる
俺はRust信者だから async dropの軟着陸を願ってるけど
Hylo, Koka, Austral, Mojoなんか出てきてるから どうなるかなぁ
結局、失敗経験のあるプログラマが注意深く組み上げる必要がある部分が残ってる
俺はRust信者だから async dropの軟着陸を願ってるけど
Hylo, Koka, Austral, Mojoなんか出てきてるから どうなるかなぁ
965デフォルトの名無しさん
2026/03/25(水) 19:21:55.59ID:M5aalIOe 信頼できるレベルと各種エコシステム構築へ人材と資本投下がなされ整備されないと言語マニアしか手を出さない
既にIT大手各社が採用していてそのインフラとして使われているRust一択でしょ
既にIT大手各社が採用していてそのインフラとして使われているRust一択でしょ
966デフォルトの名無しさん
2026/03/25(水) 22:04:55.83ID:3w74r8+z まぁ使いこなせないやつはPythonでもやってたほうが安全
967デフォルトの名無しさん
2026/03/26(木) 06:34:27.25ID:dXFIDAyf >>961
マイクロソフトでも採用されたし、Linuxでも使って良いことにになったんだが、そいつらの判断が間違っててお前が正しいってこと?
マイクロソフトでも採用されたし、Linuxでも使って良いことにになったんだが、そいつらの判断が間違っててお前が正しいってこと?
968デフォルトの名無しさん
2026/03/26(木) 07:07:14.08ID:Mf+ZycM0 >>967
うん
うん
969デフォルトの名無しさん
2026/03/26(木) 08:15:50.34ID:pQOs1sEw 確かにメモリ安全なのはCプラとかと比較した話でGCある言語も十分安全だしな
そして世の中ではそんな言語でバグが起きまくってるわけで……
そして世の中ではそんな言語でバグが起きまくってるわけで……
970デフォルトの名無しさん
2026/03/26(木) 08:45:17.61ID:dXFIDAyf Rustを嫌がってる人たちって要は学習コストが高いからでしょ?
難しすぎて覚えるのが嫌ってわがまま言ってるだけ
でもAIで学習コストと下がった、というかAIがある程度作ってくれるようになったらこれからRustはどんどん普及すると思う
難しすぎて覚えるのが嫌ってわがまま言ってるだけ
でもAIで学習コストと下がった、というかAIがある程度作ってくれるようになったらこれからRustはどんどん普及すると思う
971デフォルトの名無しさん
2026/03/26(木) 09:36:10.85ID:VjFUKHH7 出来る人が AI の補助で楽できるようになるかもしれないけど出来ない人が出来るようになったりはしないよ。
文章を書くときの漢字変換と同じくらいのレベルでの補助でしかない。
それでも充分すぎるほどに有用とはいえ、初心者にとってのハードルは下がらない。
文章を書くときの漢字変換と同じくらいのレベルでの補助でしかない。
それでも充分すぎるほどに有用とはいえ、初心者にとってのハードルは下がらない。
972デフォルトの名無しさん
2026/03/26(木) 09:36:33.60ID:VMyRwu/X >>967
>マイクロソフトでも採用されたし、Linuxでも使って良いことにになった
と
>JavaやPythonなんかのランタイムGCありのメモリ安全言語でバグ出してるやつがRust使っても同じようにバグ出す未来
がそもそも無関係だからな
>マイクロソフトでも採用されたし、Linuxでも使って良いことにになった
と
>JavaやPythonなんかのランタイムGCありのメモリ安全言語でバグ出してるやつがRust使っても同じようにバグ出す未来
がそもそも無関係だからな
973デフォルトの名無しさん
2026/03/26(木) 09:38:16.38ID:VMyRwu/X974デフォルトの名無しさん
2026/03/26(木) 10:23:04.23ID:NjtzgXUD >>967
驚いた!
驚いた!
975デフォルトの名無しさん
2026/03/26(木) 10:26:05.61ID:f2M6R6go sudo-rsで脆弱性が発見されたように実装ミスはrustでは防げないのよね
むしろビルドが通れば安全とか過信してロジックのミスが多発するような気がする
むしろビルドが通れば安全とか過信してロジックのミスが多発するような気がする
976デフォルトの名無しさん
2026/03/26(木) 10:33:45.59ID:/A2TJEsK つまりZigが正解ってことだね
977デフォルトの名無しさん
2026/03/26(木) 10:44:41.82ID:dXFIDAyf >>975
確かにその通り。
Rustは『バグがゼロになる魔法』ではなく、脆弱性の約7割を占めると言われるメモリ関連のバグ(バッファオーバーフローやUse-after-freeなど)をコンパイル時に排除するものだよ。
ロジックのミスはどの言語でも起きるけど、Rustを使うことで『メモリ破壊の心配』という低レイヤーの不安から解放されて、より高度なロジックの検証に脳のリソースを割けるようになるのが本当の価値だと思う。
確かにその通り。
Rustは『バグがゼロになる魔法』ではなく、脆弱性の約7割を占めると言われるメモリ関連のバグ(バッファオーバーフローやUse-after-freeなど)をコンパイル時に排除するものだよ。
ロジックのミスはどの言語でも起きるけど、Rustを使うことで『メモリ破壊の心配』という低レイヤーの不安から解放されて、より高度なロジックの検証に脳のリソースを割けるようになるのが本当の価値だと思う。
978デフォルトの名無しさん
2026/03/26(木) 11:18:52.31ID:f2M6R6go979デフォルトの名無しさん
2026/03/26(木) 11:59:25.18ID:vQjWCGSx それは C と Rust の比較ではなくプロジェクトが未熟か成熟しているかの問題でしょ。
最初はカスでだんだん改良されるという普通のプロセス。
スズキが外国でバイク工場を稼働したら最初はタイヤが付いてないのが完成品として流れてきたみたいな話もあるし、そんなもんだよ。
日本国内での知見を持っていても未知の土地では意味不明なことも起こる。
最初はカスでだんだん改良されるという普通のプロセス。
スズキが外国でバイク工場を稼働したら最初はタイヤが付いてないのが完成品として流れてきたみたいな話もあるし、そんなもんだよ。
日本国内での知見を持っていても未知の土地では意味不明なことも起こる。
980デフォルトの名無しさん
2026/03/26(木) 12:11:16.74ID:Mf+ZycM0 >>977
それはランタイムGCありの言語でも言えることだろ
それはランタイムGCありの言語でも言えることだろ
981デフォルトの名無しさん
2026/03/26(木) 12:15:09.08ID:dXFIDAyf >>978
『高度なロジックにリソースを割く』というのは、単にミスをしないという意味じゃなくて、『非決定的なバグ(たまにしか起きないメモリバグやレースコンディション)の調査に時間を溶かさなくて済む』ってこと
sudo-rsのミスも、発見された後は純粋なロジックの修正だけで済んだはず
もしこれがポインタの計算ミスが絡む怪奇現象だったら、修正と検証にその何倍も時間がかかっていたはずだよ
『高度なロジックにリソースを割く』というのは、単にミスをしないという意味じゃなくて、『非決定的なバグ(たまにしか起きないメモリバグやレースコンディション)の調査に時間を溶かさなくて済む』ってこと
sudo-rsのミスも、発見された後は純粋なロジックの修正だけで済んだはず
もしこれがポインタの計算ミスが絡む怪奇現象だったら、修正と検証にその何倍も時間がかかっていたはずだよ
982デフォルトの名無しさん
2026/03/26(木) 12:20:07.59ID:dXFIDAyf >>980
まあ、メモリ安全性だけならGC言語でもいいよ
でも、sudoのような『極限のパフォーマンス』と『絶対に止まってはいけない確実性』が求められる領域で、GCという重い仕組みを使わずに安全性を担保できるのは、今のところRustだけ
GC言語の『安心感』を、C言語の『スピード』で実現するのがRustだよ
まあ、メモリ安全性だけならGC言語でもいいよ
でも、sudoのような『極限のパフォーマンス』と『絶対に止まってはいけない確実性』が求められる領域で、GCという重い仕組みを使わずに安全性を担保できるのは、今のところRustだけ
GC言語の『安心感』を、C言語の『スピード』で実現するのがRustだよ
983デフォルトの名無しさん
2026/03/26(木) 12:39:14.37ID:hRem1vcJ sudoって『極限のパフォーマンス』と『絶対に止まってはいけない確実性』が求められる領域か?
984デフォルトの名無しさん
2026/03/26(木) 12:43:07.22ID:/A2TJEsK sudo-rsもそうなんだけど、Rust化のついでにしれっと脱GPLしてMITライセンスになってるのが気になる
実はそれが真の目的なのでは?
実はそれが真の目的なのでは?
985デフォルトの名無しさん
2026/03/26(木) 12:52:07.13ID:9LBdYkRG >>984
日本だと翻訳は二次著作物なのでGPLから逃げられないけど、海外だと違うんかな?
日本だと翻訳は二次著作物なのでGPLから逃げられないけど、海外だと違うんかな?
986デフォルトの名無しさん
2026/03/26(木) 13:04:01.69ID:vxyZS0Yf >>985
欧米でも同じだよ。
結局のところ、GPLは「著作権者」が利用者に課す条件でしかない。
裁判で争う余地はあるけど、それは「元のC版の権利者」が「自分の表現が不当に翻案された」と訴えた場合の話。
sudoみたいに権利者が多岐にわたるプロジェクトだと、誰が原告になってどのコードの権利を主張するのかって問題だけで詰む。
結局、開発側が「これはクリーンルーム設計の再実装です」って言い張れば、それを覆すのは極めて難しい。
欧米でも同じだよ。
結局のところ、GPLは「著作権者」が利用者に課す条件でしかない。
裁判で争う余地はあるけど、それは「元のC版の権利者」が「自分の表現が不当に翻案された」と訴えた場合の話。
sudoみたいに権利者が多岐にわたるプロジェクトだと、誰が原告になってどのコードの権利を主張するのかって問題だけで詰む。
結局、開発側が「これはクリーンルーム設計の再実装です」って言い張れば、それを覆すのは極めて難しい。
987デフォルトの名無しさん
2026/03/26(木) 13:04:52.58ID:Q2wgFsqU988デフォルトの名無しさん
2026/03/26(木) 13:15:09.72ID:yPj1PUED989デフォルトの名無しさん
2026/03/26(木) 13:16:56.17ID:E98A7ao2990デフォルトの名無しさん
2026/03/26(木) 13:29:29.89ID:8v6/4hgv991デフォルトの名無しさん
2026/03/26(木) 13:38:23.16ID:1ge5wFl8 親告罪だっけ?
第三者が訴えられるのって?
著作権違反が親告罪だかは知らんけど
第三者が訴えられるのって?
著作権違反が親告罪だかは知らんけど
992デフォルトの名無しさん
2026/03/26(木) 13:40:55.66ID:1ge5wFl8 もしかして>>990はそもそも著作権限でGPL規定しても
法的には無効だとでも言ってるのか?
法的には無効だとでも言ってるのか?
993デフォルトの名無しさん
2026/03/26(木) 14:01:56.51ID:b5iNeq5P sudo-rsがやばそうだからってアクロバティック擁護してるだけだな
994デフォルトの名無しさん
2026/03/26(木) 14:09:18.84ID:vQjWCGSx >>985
著作権は著作 (表現) の権利であって書かれているアイデアには権利が及ばない。
たとえば料理のレシピ本を第三者がコピーして配布する自由はないがその料理を作ってふるまうのは自由だし表現を変えて説明するのもある程度は許容される。
プログラムを別の言語に置き換えたとき真似たのが表現なのかアイデアなのかの境界線は明瞭ではなく、文章の翻訳とは基準が異なる。
個々に裁判する以外には決定されないがおそらくプログラムはその性質から「機能」を重視した解釈がされるはずなので一対一の対応が大半の部分で明らかな場合でもなければ別言語への置き換えは著作権を根拠に阻止は出来ないと思う。
※ これは著作権の考え方の話であって別の権利が及ぶ場合はあるかもしれません
著作権は著作 (表現) の権利であって書かれているアイデアには権利が及ばない。
たとえば料理のレシピ本を第三者がコピーして配布する自由はないがその料理を作ってふるまうのは自由だし表現を変えて説明するのもある程度は許容される。
プログラムを別の言語に置き換えたとき真似たのが表現なのかアイデアなのかの境界線は明瞭ではなく、文章の翻訳とは基準が異なる。
個々に裁判する以外には決定されないがおそらくプログラムはその性質から「機能」を重視した解釈がされるはずなので一対一の対応が大半の部分で明らかな場合でもなければ別言語への置き換えは著作権を根拠に阻止は出来ないと思う。
※ これは著作権の考え方の話であって別の権利が及ぶ場合はあるかもしれません
995デフォルトの名無しさん
2026/03/26(木) 14:57:14.28ID:AuyuXpZU Rustの話をしろ
996デフォルトの名無しさん
2026/03/26(木) 15:02:52.12ID:ePn0y1Ti >>984>>987
sudoはGPLじゃないんだが君たち大丈夫かw
sudoはGPLじゃないんだが君たち大丈夫かw
997デフォルトの名無しさん
2026/03/26(木) 15:53:07.88ID:m4Sfrr/7 sudoに限らずってことじゃないか
998デフォルトの名無しさん
2026/03/26(木) 16:04:05.73ID:sVDNc+3s999デフォルトの名無しさん
2026/03/26(木) 16:29:16.46ID:ZMuTo2I4 すまん文盲だったか
1000デフォルトの名無しさん
2026/03/26(木) 16:29:30.93ID:ZMuTo2I4 梅乙
10011001
Over 1000Thread このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 119日 4時間 4分 8秒
新しいスレッドを立ててください。
life time: 119日 4時間 4分 8秒
10021002
Over 1000Thread 5ちゃんねるの運営はUPLIFT会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《UPLIFT会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
4 USD/mon. から匿名でご購入いただけます。
▼ UPLIFT会員登録はこちら ▼
https://uplift.5ch.io/
▼ UPLIFTログインはこちら ▼
https://uplift.5ch.io/login
運営にご協力お願いいたします。
───────────────────
《UPLIFT会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
4 USD/mon. から匿名でご購入いただけます。
▼ UPLIFT会員登録はこちら ▼
https://uplift.5ch.io/
▼ UPLIFTログインはこちら ▼
https://uplift.5ch.io/login
レス数が1000を超えています。これ以上書き込みはできません。
ニュース
- 【サッカーW杯】1次リーグ敗退に韓国大統領が異例の失望表明…「無能な指揮官選べば結果は火を見るより明らか」 [王子★]
- 「愛子さま皇位継承あり得ず」 中曽根弘文氏、結婚する人ない [ぐれ★]
- 女優・松本まりか「壊されたくない物があるなら、罰で強制でなく…大切に思ってもらえるように行動すべき」作家の国旗に関する投稿に私見 [少考さん★]
- ”アジアの惨状”「世界でダントツの弱い地域…」9チーム中7チームが敗退、SNS嘆き節「弱すぎる」「イタリア出したほうがいい」 [ゴアマガラ★]
- 【五輪】IOC「私たちは再び日本で冬季五輪を行いたいと考えている」 [ニーニーφ★]
- 【速報】小椋藍、MotoGPオランダGPで歓喜の初勝利! 日本人ライダーとして22年ぶり快挙 [鉄チーズ烏★]
- 【実況】博衣こよりのえちえち電脳少女シロ清楚の日9 🧪🐬★4
- 【実況】博衣こよりのえちえち電脳少女シロ清楚の日9 🧪🐬★3
- 🏡立てろカス共😡
- 🏡
- 高市支持率上昇。最多理由「人柄が信頼できる」 [237216734]
- 湿度100%中の100%