探検


Rust part38

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2026/07/24(金) 20:04:25.76ID:24e2kQId
公式
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/
(コミュニティによる日本語翻訳版もあります: https://doc.rust-jp.rs/book-ja/)

※Rustを学ぶ際に犯しがちな12の過ち
https://dystroy.org/blog/how-not-to-learn-rust

※Rustのasyncについて知りたければ「async-book」は必読
https://rust-lang.github.io/async-book/

※次スレは原則>>980が立てること

前スレ
Rust part37
https://mevius.5ch.io/test/read.cgi/tech/1784283151/

ワッチョイスレ
プログラミング言語 Rust 4【ワッチョイ】
https://mevius.5ch.io/test/read.cgi/tech/1514107621/
681デフォルトの名無しさん
垢版 |
2026/08/31(月) 06:48:28.11ID:SqUDmsbH
ChatGPTえもん〜、Cで書いたコードをrustに自動変換するツール作って
2026/08/31(月) 09:45:42.21ID:oL3mCUMO
“脱・C言語”を狙う開発者が「Cの代替言語を作っても失敗する」と断言するワケ
https://kn.itmedia.co.jp/kn/article/2608/28/2000000839/
683sage
垢版 |
2026/08/31(月) 10:54:31.44ID:qk7YScBN
会員にならせて読ませるとか作文読ませる気ないやろ
684sage
垢版 |
2026/08/31(月) 10:55:21.56ID:aajPzIs4
現実を直視しなくては😇
2026/08/31(月) 11:06:17.12ID:0R0dUIy0
米国国防総省のDARPA、CからRustへのコード変換を自動化する「TRACTOR」プログラムを開始
https://atmarkit.itmedia.co.jp/ait/spv/2408/14/news045.html
2026/08/31(月) 11:07:22.08ID:Vk6bJUve
c c++ はとっくの昔に終わってる
687デフォルトの名無しさん
垢版 |
2026/08/31(月) 11:22:26.09ID:Gq2BURII
AIで有料記事ハックとか未だにできるんだよな
2026/08/31(月) 12:36:11.84ID:7SQ5Cyo4
rust はとっくに限界が見えている
2026/08/31(月) 13:09:41.78ID:ONw5Kbes
どんな限界だ
690sage
垢版 |
2026/08/31(月) 13:48:20.30ID:e1nBZLui
限界突破するための限界が見えている😤
2026/08/31(月) 14:01:02.96ID:RxldOMhT
asyncのごちゃごちゃ感だろ
692sage
垢版 |
2026/08/31(月) 14:04:46.19ID:8wNs1ubM
###Rustのasyncをスッキリさせる4つの思考法

* 同期と非同期を分ける: ビジネスロジックなどの計算処理は普通の fn で書き、I/O待ちだけを外側の async fn に押し出す

* 参照の借用を避ける: .await を跨ぐとライフタイム地獄になるため、Arc やクローンを使って所有権ごと async ブロックに持ち込む

* Futureを「データ」と捉える: 手続き型の流れではなく、非同期タスク同士がチャネルなどで緩やかにつながる構造としてイメージする

* 小さく切り出す: 巨大な非同期関数を作らず、小さなヘルパー関数に分割してコンパイラの型チェックを味方につける
693sage
垢版 |
2026/08/31(月) 16:55:55.51ID:rZyf5tov
###非同期処理やイベント駆動型のアーキテクチャにおいて、**疎結合(Loose Coupling)**を徹底できるかどうかが、システムの成否を分ける最大の分かれ道になります。

同期処理であれば、呼び出し元と呼び出し先が密に結合していても「その場で結果が返ってくる」という直感的な安心感がありますが、非同期の世界ではそうはいきません。処理の実行タイミングやライフサイクルが完全に切り離されるため、お互いの内部実装や都合を意識させない設計が不可欠です。

一方で、疎結合を追求しすぎると、データの整合性(分散トランザクション)の担保が難しくなったり、システム全体の処理フローを追うトレーサビリティが低下したりするトレードオフも生じます。だからこそ、イベントの粒度設計や、エラー時の再試行(リトライ)メカニズム、デッドレターキューの活用といったケアが重要になってきますね
694デフォルトの名無しさん
垢版 |
2026/08/31(月) 17:25:57.26ID:Gq2BURII
疎結合を「徹底」できるかと言い切った後に、「追求しすぎると…」と保険をかけるのはズルいのでは?
と聞いてみて
695sage
垢版 |
2026/08/31(月) 17:52:04.60ID:7kxCe+Gm
ぶっちゃけAIが判断できるから関係ねーんだわ
2026/08/31(月) 17:53:46.85ID:N6g/eopA
徹底と言ったって想定する条件がゼロになるほど疎なはずはないんだから程度問題なのは当たり前だろ。
ここで言うのは常に考慮に入れることを徹底しろという意味であって限界まで疎であることを徹底しろという意味じゃなくね?
697sage
垢版 |
2026/08/31(月) 17:55:09.71ID:/Gs1FUbj
はいその通り
2026/08/31(月) 19:13:05.05ID:EGtnh/NE
>>695
AI時代はRust一択だぞ
2026/08/31(月) 19:33:39.38ID:fi86dnl4
へーRustかすごいね、と思ったソフトウェアをよく見ると大体vibe coded
AIのおかげで普及したね
2026/08/31(月) 20:58:37.59ID:N6g/eopA
同程度の機能を実装する場合を比較して Rust はトークン消費量が多い傾向にある。
同程度のことを実現するために配慮していることが多い (不具合の少なさが期待できる) とも解釈できるので必ずしも悪いことではないけど意思決定する経営層にとってどう見られるかというのはまた別。
トークン消費量が多くても割に合う場合ばかりとは限らない。
状況によるので Rust 一択というほどではないよ。
2026/08/31(月) 21:06:57.48ID:Vk6bJUve
AIもふくめてこれからの言語は Rust以外ありえない状況だろ
702sage
垢版 |
2026/08/31(月) 21:07:24.55ID:LmfMHr3O
推論コストはどうせ低減するからRustで組んじゃったほうがいいよ
2026/08/31(月) 21:48:02.91ID:oY+PUH7u
AI時代は、AIネイティブ設計のMoonBitで決まり
704デフォルトの名無しさん
垢版 |
2026/08/31(月) 21:57:59.37ID:HBl+laXQ
gcある時点でなんちゅーか、、「ぬるい」よな。
出直してきな
2026/09/01(火) 10:31:04.11ID:wFs/oTUt
C や Rust だとヒープメモリに確保した領域をコンパクションできない。
オブジェクトを勝手に移動するわけにいかないから整理して断片化を解消とはいかないんだ。
長期間起動しっぱなしのウェブサービス系なんかだと (コンパクションを含む) GC 有りの Java や JavaScript が主流なのは理由がある。
Rust 風の文法で GC 有りの言語も需要はあるだろ。
まあ場合によるというなんの足しにもならない普通の結論だよ。
706sage
垢版 |
2026/09/01(火) 10:37:35.74ID:855N3Ylu
C#にはメリットがあると言ってるのと同じ
707デフォルトの名無しさん
垢版 |
2026/09/01(火) 10:42:26.22ID:MttIhlxL
Rustに穴は無かった
http://blog.livedoor.jp/corez18c24-mili777/archives/60026921.html
2026/09/01(火) 11:50:31.11ID:P+OnDMhh
関係ないねミリタリーガイジ
709デフォルトの名無しさん
垢版 |
2026/09/01(火) 12:41:55.16ID:2Jhmxy0Z
>>705
Rustにもgcクレートあるみたいだけど、コンパクション付きのはまだ無いかな?
実際、安定性とかどうなのかな?
2026/09/01(火) 12:50:57.80ID:cqno5wDp
RustはRustで穴だらけだけどRustマンセー厨は穴が認識できない
もちろん穴のない言語なんてないんが穴が無いと錯覚しやすい言語ほど危険
2026/09/01(火) 12:56:12.71ID:7F1HZSsp
まずRustより穴の無い言語を示してください
712sage
垢版 |
2026/09/01(火) 12:57:22.01ID:lCMUavfv
Rust++
2026/09/01(火) 13:38:30.97ID:mZ5QknVE
Wuffs
2026/09/01(火) 13:48:16.34ID:mTPYBrTG
それは最新RoadmapがUpdated on October 2022のままだな
2026/09/01(火) 14:14:08.36ID:Kh3w32Vf
64-bitになってから、メモリコンパクションの必要性は下がったと聞いたけど
2026/09/01(火) 15:10:46.27ID:OCoo7eDm
C/C++よりも多少性能悪いけどC/C++よりは安全性が高い
GC言語よりも性能はいいけど安全性と利便性は低い
これが現在のRustの立ち位置

ミドルウェアや性能を求めるライブラリ向き
一般的なアプリケーションではコストに見合わない
717デフォルトの名無しさん
垢版 |
2026/09/01(火) 15:14:33.47ID:eWS37nqr
>>716
一般的なアプリケーションとは何?
例えばexelは一般的なアプリケーション?
2026/09/01(火) 15:35:24.55ID:Omc6nrKw
>>716
GC言語でRustより安全性が高い言語って何?
GC言語はメモリ安全性くらいしかないよ
719デフォルトの名無しさん
垢版 |
2026/09/01(火) 22:58:48.86ID:ANS1FkZj
アップデート来てるぞ~

https://blog.rust-lang.org/2026/09/01/Rustup-1.29.1/

$ rustup self update
2026/09/02(水) 00:46:56.08ID:E6cCE3/X
これはポインタ部をそのまま変えずに長さ部だけ0にするから速いってこと?
..0を初めて見たので

// setting length to 0 is cheaper than overwriting the pointer when assigning &[]
self.v = &self.v[..0]; // cheaper than &[]
2026/09/02(水) 01:05:03.79ID:Az3QnuqU
1円安い
2026/09/02(水) 01:30:26.62ID:sS6mRqCc
どっちも売ってないと思うんだけど
2026/09/02(水) 23:50:03.87ID:9Jae69MN
core/slice/iter.rsに10箇所あるね
2026/09/03(木) 00:37:17.72ID:ZQVbI6ey
Windows App SDK の Supported languages and runtimes に
「Rust (via windows-rs crate)」が公式に記載されたよ
2026/09/03(木) 01:08:02.88ID:VPPF4aQB
sliceのwindowsメソッドのWindows構造体やChunks構造体のところだな
726デフォルトの名無しさん
垢版 |
2026/09/03(木) 03:14:57.03ID:wza7af+B
winとかゆうゲームオタクosどうでもよくね
2026/09/03(木) 03:58:05.52ID:Zyed1mEP
windowsやchunksがそれ以降に無いことを示すためにサイズ0のスライスを置いておくfuseだね
728デフォルトの名無しさん
垢版 |
2026/09/03(木) 14:56:42.80ID:ZTJNBM8Q
>>726
このスレにお前の宗教的価値観を持ち込むなよ
729sage
垢版 |
2026/09/03(木) 15:11:40.83ID:wJI1mRya
情弱OSやな
今や他のOSでもゲームはできる
2026/09/03(木) 22:43:11.12ID:jyoYqhxj
スライス参照xに
空スライス参照&[]を代入すると
| mov qword ptr [rdi], 8
| mov qword ptr [rdi + 8], 0
サイズだけでなくアドレスも書き換わる
アドレスは空スライス用ダミーの8

&x[]を代入すると
文法違反で当然コンパイルエラー

自分のサブスライス&x[..0]を代入すると
| mov qword ptr [rdi + 8], 0
サイズだけ書き換わる
2026/09/03(木) 23:18:05.53ID:ZG7JQrHf
毎回コメントが必要になるハッキーなコードを繰り返し書くんならメソッド用意しろよ
2026/09/03(木) 23:50:05.90ID:+Qri7cVl
indexはusizeだから..0は0..0なのでトリッキーでも何でもなく自明としてset_0メソッドは却下されそう
2026/09/04(金) 17:49:43.53ID:BT/0Kv7m
>>732
毎回コメントが必要になってる理由はどう見てもそこじゃないだろ
2026/09/05(土) 02:02:11.89ID:Sa57Np19
これで満足かい?

impl<T> &[T] {
fn resize(&mut self, size: usize) {
*self = &self[..size];
}
}
2026/09/05(土) 10:48:22.64ID:OZgIT4JK
>>734
それじゃ最適化されんだろと思ったが同じように最適化されたので満足
2026/09/05(土) 12:22:03.19ID:LHtopyrK
名前で揉めそうだけど機能的にはacceptされるかもな
2026/09/05(土) 17:33:08.08ID:v5DrvjB5
>>735
スライス長≧引数sizeのチェックが入るけど
引数sizeが0の時は恒真だからチェックが消えてスライス長への0代入のみに最適化されるね
2026/09/06(日) 09:20:08.17ID:blzl0lWn
>>736
長くは出来ないからshrink()あたり?
2026/09/06(日) 11:55:53.64ID:Dc8kHf3j
Vecだとtruncateだな
あっちはdropするからニュアンス違うかもしれんが
2026/09/06(日) 20:42:57.35ID:ox0gOLwL
切り捨てるより縮むか
2026/09/09(水) 07:49:59.23ID:YdCiiFw4
>>731
どこまでハッキーなの?
&**sとか許せない派?
742sage
垢版 |
2026/09/09(水) 18:07:46.09ID:Tvvo/2V8
AstraにPure Rust指示でアプリ作らせてるけどスイスイ進むな
ラッピングされてるクレートも置換できる勢い
2026/09/09(水) 18:14:18.77ID:DEAObdGY
>>742
Rustである意味がドンドンと薄まってるな
AIが所有権を理解している(違反行為をしないのだから
744sage
垢版 |
2026/09/09(水) 18:15:19.53ID:Tvvo/2V8
障害者アピールはNG
745sage
垢版 |
2026/09/09(水) 18:15:59.42ID:2CAoJxst
😭
https://i.imgur.com/QdnVOt2.png
2026/09/12(土) 01:16:30.41ID:cCbrYeoZ
MicrosoftにおけるRustは第一級言語として位置付けられています
https://rustfoundation.org/media/guest-post-rust-is-tier-1-language-at-microsoft/

今や、Rustがマイクロソフトにとって戦略的に重要な技術であることは言うまでもありません。
747デフォルトの名無しさん
垢版 |
2026/09/12(土) 01:24:38.98ID:Y5okXoFp
azure functionsでネイティブ対応になってから言ってくれ
2026/09/12(土) 01:39:43.10ID:mb18465k
>>746
そうなると、クソマイクソ社員はRustへ貢献すると良しにせよ悪しにせよ業績になるんだろ?
汚い手は引っ込めておいて頂きたい
749sage
垢版 |
2026/09/12(土) 01:51:43.34ID:pvePMjjv
Rustが1位なんて公言しないでも当たり前のこと
2026/09/12(土) 08:12:53.72ID:u0Kup78g
Nvidia もrust 対応
https://gihyo.jp/article/2026/09/cuda-rust
2026/09/12(土) 08:55:47.86ID:9vpNcNze
NVIDIAは2026年9月8日、GPU向け並列計算プラットフォームCUDAにおいてRustによる開発を可能にする「CUDA Rust」を発表した。

これまでCUDAにはC++あるいはPython用のプログラミングツールが用意されていたが、CUDA RustによりRustによるネイティブGPUプログラミングが可能となった。
GPUカーネルをRustで記述し、ネイティブにPTX(GPU用中間コード)にコンパイルできる。
2026/09/12(土) 09:00:22.95ID:SbA8vIye
>>748
別に今に始まったことではなく、ビッグテックの中で最もRustに貢献しているのはMS
認めたくないのはわかるが、事実としてもはやMS系技術と見做してもよいレベル
753sage
垢版 |
2026/09/12(土) 09:21:29.48ID:pvePMjjv
デマ乙
Mozillaだから
2026/09/12(土) 09:37:02.83ID:u0Kup78g
AIの開発にもRustが使われるんだな
で、そのRustのコードをAIが書く、と
755デフォルトの名無しさん
垢版 |
2026/09/12(土) 09:55:06.57ID:iKgtYaNl
GPUシェーダーのメモリー安全性が保証されるのなら価値があるのに関係なさそうだ
2026/09/12(土) 09:58:22.08ID:5EieQRWH
>>753
Mozillaなんかもうとっくに撤退したよ
757sage
垢版 |
2026/09/12(土) 10:17:54.43ID:wVPOLHhT
デマとロンスリ乙
一番貢献したのはMozillaだからw
2026/09/12(土) 10:31:28.97ID:re76RXb1
>>752
AmazonとGoogle
759デフォルトの名無しさん
垢版 |
2026/09/12(土) 10:41:22.04ID:vHyoenO+
AIとRustは相性いいからな
2026/09/12(土) 10:53:13.99ID:8MASsaPD
AI(ベンダーの利益)と(トークンバカ食い)Rustは相性いいからな
2026/09/12(土) 11:29:19.28ID:R2+pGxaW
Mozillaの大量リストラのときにRustメンテナを一番引き取ったのはAWSだったかな
あれからかなり経ったし、人件費の累積で見てもMozillaは1位じゃなくなってそう
もちろん初期にMozillaが支えてくれなければここまで来れなかっただろうけど
762sage
垢版 |
2026/09/12(土) 11:30:01.14ID:ojLORlJY
じゃあ人力でやってください笑
763sage
垢版 |
2026/09/12(土) 11:31:05.73ID:SyD0CThe
あのね0を1にするのは
1を100にするのとはワケが違うわけよ
こんなことも分からん奴は障害者
764デフォルトの名無しさん
垢版 |
2026/09/12(土) 23:27:42.28ID:rpAGRvCj
>>745
Part 36
2026/09/12(土) 23:33:51.30ID:dfahdW/s
>>764
それはRustアンチの自演がバレた件だな
2026/09/13(日) 13:07:14.34ID:eqIbpyGP
どこに何をDLすんのか明らかにしろ

アクセス数稼ぐとMSにカネでももらえんのかよ
2026/09/13(日) 13:07:35.61ID:eqIbpyGP
ゴミ言語
768sage
垢版 |
2026/09/13(日) 16:14:49.94ID:Z4aXQprS
【朗報】Rust、Astra配備により完全勝利
2026/09/13(日) 16:48:16.54ID:Ppv4yTov
Astraは新規契約受付を早く再開できるといいね
770デフォルトの名無しさん
垢版 |
2026/09/17(木) 10:25:22.37ID:rRA7hK/3
node.js
最強、ほんとは
2026/09/17(木) 12:40:50.40ID:EYhS05JC
Astra は Rust 製の軽量な Web サーバーフレームワークで、Tokio のような大規模な async ランタイムに依存せず、独自の小さなイベント駆動 I/O ループとワーカープールで動作します。

特徴としては以下のような点があります。
[非 async/await スタイル]
Rust の async/await を使わず、OS の I/O 待ちに直接委譲する設計。
[軽量ランタイム]
Tokio や async-std のような巨大依存を避け、バックグラウンドスレッドでイベントループを回す。
[シンプルな API]
小規模な HTTP サーバーや組み込み用途に向く。

以下は Astra を使ってシンプルな HTTP サーバーを作る例です。
use astra::{Server, Request, Response};
let api_key = std::env::var("ASTRA_API_KEY")
.expect("ASTRA_API_KEY is not set");
let url = "https://api.openai.com/v1/astra/completions";;
772デフォルトの名無しさん
垢版 |
2026/09/17(木) 18:37:38.92ID:1Dii7e3S
Rustで本番回してるけど手書きしてる人っている?
2026/09/17(木) 19:09:52.50ID:ogf4/i6m
もうほとんど手で書いてない、、、
774sage
垢版 |
2026/09/17(木) 19:43:47.88ID:mhM8q2bn
Astra以前から手書きはほとんど無かったんちゃう?
2026/09/17(木) 20:52:06.25ID:mm14ey+j
コメントから生成も手書きに含めていいなら1割くらいは手書き
コード直接直すこともある
2026/09/17(木) 22:01:19.86ID:jX8ec9FV
>>771
AIのほうのAstraだったらその程度はサクッとフルククラッチで作れちゃうからもうそういうの用無し
2026/09/17(木) 22:24:33.55ID:aNUW/wAZ
>>776
最後の2行をよく見ろ
AIのほうのAstraを呼び出すというジョークだぞ
778デフォルトの名無しさん
垢版 |
2026/09/18(金) 00:35:07.01ID:o5rVKwP6
もうRustに限らず手書きでコード書いてるやつなんていないんじゃなかろうか
2026/09/18(金) 22:00:56.73ID:DZ9pLuda
rustc_codegen_utc
これが実質Rust++
780sage
垢版 |
2026/09/18(金) 22:12:18.30ID:BpYnRZAh
MSの都合じゃん
781デフォルトの名無しさん
垢版 |
2026/09/19(土) 15:46:54.34ID:dnbyPfFe
>>778
リスクヘッジでAI駆動開発するか顧客や外注先と念書交わすけど
万が一断られたら手で書くことになる
大きな相手で柔軟でない所だと実際にある
■ このスレッドは過去ログ倉庫に格納されています

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