Rust part27

レス数が1000を超えています。これ以上書き込みはできません。
1デフォルトの名無しさん
垢版 |
2024/12/02(月) 22:32:50.31ID:D+1pIyvG
公式
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 part26
https://mevius.5ch.net/test/read.cgi/tech/1726838318/

ワッチョイスレ
プログラミング言語 Rust 4【ワッチョイ】
https://mevius.5ch.net/test/read.cgi/tech/1514107621/
2025/03/24(月) 11:58:19.75ID:Q7rhWE6T
>>962
>任意の型(の集合)がトレイトによってトレイト実装されてる型とされてない型に境界が引かれるよ
普通に考えたら無理があり過ぎるってわかるやろ
2025/03/24(月) 12:23:21.76ID:cPeZblFF
>>966
何を言ってるの…?
2025/03/24(月) 12:26:57.19ID:a0wY9RFf
>>968
トレイト境界はそのイメージがちゃんとできると使えるよ
トレイト毎に境界があるからね
971デフォルトの名無しさん
垢版 |
2025/03/24(月) 12:35:54.16ID:tWxitKr9
Arena<T>とかRc<RefCell<T>>ってCの生ポに比べてどれくらいパフォーマンス落ちるの?
972デフォルトの名無しさん
垢版 |
2025/03/24(月) 12:42:11.30ID:tWxitKr9
>>949
何でも必ず初期化させる言語と実際に利用するまで初期化が必要無い言語との差は速度面で差が出る部分だと思う
(安全面はおいといて)
973デフォルトの名無しさん
垢版 |
2025/03/24(月) 13:26:19.03ID:CX9jwcEn
Trait制約とTrait境界
どちらが正しいの?
2025/03/24(月) 14:05:50.97ID:g+HztaOv
>>973
公式といえるものが存在しないので明瞭な結論はないが境界のほうがスタンダードという風潮はある。
真っ先に日本語訳を出したボランティアグループがそうしているから。
技術用語は原則として直訳するものなのでもしも JIS が Rust の規格を成立させたとしてもたぶん境界と訳すと思う。

制約派は有名な会社 (オライリー) が出している書籍で制約という語をあてていることを根拠としていて、ボランティアグループよりプロの翻訳家のほうが信頼できると主張している。
2025/03/24(月) 14:07:50.39ID:GUfk5wC7
ボウンズでいいよ
2025/03/24(月) 14:32:08.72ID:jgU8FjIN
>>973
訳さずトレイトバウンドと呼ぶのが好ましいけど日本語化したければトレイト制約
トレイト境界は勘違いと理解不足から発生した間違った訳語なので避けたほうが良い

どの辺が間違っているかはこのスレを読み返してくれ
2025/03/24(月) 14:34:35.04ID:8nOZWVbe
屋根の色は青が正しい!
2025/03/24(月) 15:34:03.20ID:MH5MWyKr
>>977
誤爆してるよ
お大事に
2025/03/24(月) 17:17:17.01ID:a0wY9RFf
>>971
生ポと比較する意味がないよ
確実に自動解放するための枠組み
例えばRcは複数の所有者が生じる時に使われて、どれが先に消えても最後に残った側が自動解放するんだよ
Cで同じことを実現しようとしたら同じく参照カウンタが必要
C++でも参照カウンタを用いてshared_ptrが作られてるよ

>>972
初期化を仮定しないMaybeUninitがRustにはあるから大丈夫
ライブラリ等ではこれを使って不要な初期化を避けているよ
0でのmemset呼び出しが消滅

973
trait boundsはトレイト境界だよ
英語でも敢えてconstraint (制約)を使っていない意義を尊重
トレイト境界により型のとれうる範囲が狭まって型の制限いわゆる型制約が生じるよ
2025/03/24(月) 17:28:07.52ID:NJwebgj2
ああこれって王様を尊重すると言いながら
戦争していいかどうかは王様に相談してないパターンか
2025/03/24(月) 18:08:22.30ID:XCWZ1fyV
「制約」は渡す側の視点でしか見てないからな
受け取る側にとってはトレイトの「保証」でもある
ジェネリクス型を受け取る関数を自分で書かないレベルに合わせるなら
「制約」で意訳しても構わないと思う
2025/03/24(月) 18:38:13.55ID:g+HztaOv
>>981
そのレベルの人が上達してきたときに用語を切り替えるなんてわけにもいかんし、
「この制約のことを Rust 用語ではトレイト境界といいます」とでも一言あればそれで済む話じゃね?

入門者向けの便宜的な説明が後々まで尾を引いて混乱することはあるから喩えとか意訳とかは慎重にしたほうが良いと思う。
2025/03/24(月) 18:44:54.15ID:zTw2TQbc
>>981
レベルの話じゃないんだよね

両方の視点をもつのはいいんだけど型シグニチャは使う方との契約だから
作る側じゃなく使う側の視点によせるのが自然
作る側の視点で見る回数よりも
使う側の視点で見る回数のほうが圧倒的に多いということもある

仮に受け取る側の視点から見たとしても
トレイトの「保証」だから「トレイト境界」とはならないよね

not satisfiedとかとコロケーションが確立されてるのも
rustcの開発陣もみんな制約として見てるからなんだよ
2025/03/24(月) 18:49:17.73ID:zTw2TQbc
プレート境界とか軍事境界とか〜境界の日本語での使われ方を考えてみたら?

プレートとプレートの境目だからプレート境界
西側の軍事と東側の軍事の境目だから軍事境界

トレイトとトレイトの境目ならトレイト境界は日本語として用意に成立する
でも実際はそうじゃないから
2025/03/24(月) 18:54:56.12ID:a0wY9RFf
『制約』という完全に意味を間違えている言葉でなければ
『境界』より相応しい範囲を表す何らかの言葉でもいいと思うよ
混乱しないようにトレイト境界のままでもOK
2025/03/24(月) 18:59:58.08ID:a0wY9RFf
boundsの意味もtrait boundsの用法も範囲の限界を意味しているわけだから
範囲の限界はすなわち境界だよね
範囲の限界を表すもっと良い言葉があるかどうか
987デフォルトの名無しさん
垢版 |
2025/03/24(月) 19:09:34.08ID:CX9jwcEn
Boundsが制約だと思うスレ
2025/03/24(月) 19:28:44.61ID:38sVBjRv
まだやっていたのかw

これが本当の境界○能だったらどうしよう
2025/03/24(月) 20:22:18.74ID:w43kWBw9
「よ」とか「ね」とかの終助詞付けても主張が激しいから全然柔らかくなってない
特有の違和感を常に感じさせる文体
990デフォルトの名無しさん
垢版 |
2025/03/24(月) 21:58:28.76ID:CX9jwcEn
>>984
プレートの際だからプレート制約
軍事の際だから軍事制約では?
991デフォルトの名無しさん
垢版 |
2025/03/24(月) 21:59:18.18ID:CX9jwcEn
>>988
制約知能でも意味が通じる不思議
2025/03/24(月) 22:12:24.41ID:617amb99
>>986
>範囲の限界を意味しているわけだから
何の範囲の限界?
そこも含めて考えないと質の低い機械翻訳と同じだよ

>範囲の限界はすなわち境界だよね
違う
日本語における限界と境界の違いを理解してない
2025/03/24(月) 22:17:47.15ID:g+HztaOv
日本語での意味なんかどうでもいいよ。
Rust コミュニティの先導者が境界ということにしたのだし、コミュニティの状況を調べなかったか分断しようとするオライリーの質が低いってだけ。
2025/03/24(月) 22:40:56.78ID:wvKmLjta
レイトマジョリティ自覚して先人に敬意払っとけ
2025/03/24(月) 22:43:00.79ID:vQzFTF6N
ID:a0wY9RFfは所有権を複製しそうだね
2025/03/25(火) 04:40:05.04ID:ztarSHRB
残り3レスで問題と慈善事業をを要約してくれ
2025/03/25(火) 07:36:07.50ID:4wgArwVx
日本語訳プロジェクトを乗っ取って「トレイト制約」で統一すりゃいいんじゃないんかな。
日本語訳プロジェクトは最新版に追随できていないから文句言うやつは居ないだろ。
2025/03/25(火) 07:40:07.85ID:6deS3uMO
そういや、誰か標準ライブラリの日本語訳してなかったっけ?
あれどうなった?
999デフォルトの名無しさん
垢版 |
2025/03/25(火) 08:50:43.64ID:ztarSHRB
トレイトの神様 降臨
2025/03/25(火) 08:51:04.90ID:ztarSHRB
継ぎ
https://mevius.5ch.net/test/read.cgi/tech/1742805420/
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 112日 10時間 18分 15秒
レス数が1000を超えています。これ以上書き込みはできません。