Rust part33 (229レス)
Rust part33 http://mevius.5ch.net/test/read.cgi/tech/1755247770/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
74: デフォルトの名無しさん [sage] 2025/08/25(月) 06:47:36.11 ID:E2rxLwdP >>59 >>60 それらは古典的プログラミングだから無関係な処理が間に挟まったり流れが乱されるため可読性が落ちる Rustでは抽象化したプログラミングによりメソッドチェーンで繋ぐことが多い チェーンの間はタプルのまま旅を続けたとしても一つの流れなので可読性は落ちない チェーンの途中もしくは最後のforやfold系でパターンマッチングされてタプルが解消されればよい http://mevius.5ch.net/test/read.cgi/tech/1755247770/74
75: デフォルトの名無しさん [sage] 2025/08/25(月) 08:15:32.90 ID:foAG4KWU 多値戻しは_をサポートしてなければコーダーにとってはどうでもいい話じゃないんかね。 最適化機会を明示できるかどうかくらいじゃね? http://mevius.5ch.net/test/read.cgi/tech/1755247770/75
76: デフォルトの名無しさん [sage] 2025/08/25(月) 10:18:01.04 ID:hSk6qQ9G ながめてるとたしかに_多いな >fn f(init: &str, n: usize) -> String { > let mut list = init.chars().rev().collect::<Vec<_>>(); > for _ in 1..n { > if let Some((pre_index, (_, old))) = list.iter().tuple_windows().enumerate().find(|(_, (pre, cur))| pre > cur) { > let old_index = pre_index + 1; > let (new_index, _) = list.iter().enumerate().find(|(_, cur)| cur > &old).unwrap(); > list.swap(old_index, new_index); > list[..old_index].reverse(); > } > } > list.into_iter().rev().collect() >} http://mevius.5ch.net/test/read.cgi/tech/1755247770/76
77: デフォルトの名無しさん [sage] 2025/08/25(月) 12:25:47.76 ID:lo8Kz+ZF タプルの片方は途中不要で最後に必要だが、もう片方はその逆とかよくあるある。 後者のfind()はposition()に置き換えられるが、二つのfindが対称形の処理ぽいのでそのままでもいいか。 http://mevius.5ch.net/test/read.cgi/tech/1755247770/77
78: デフォルトの名無しさん [sage] 2025/08/25(月) 15:50:58.87 ID:4Ejmg1ls まだ多値の話してる・・・ http://mevius.5ch.net/test/read.cgi/tech/1755247770/78
79: デフォルトの名無しさん [sage] 2025/08/25(月) 16:13:59.05 ID:M76UE5qm このスレはあくまで複おじのファンスレッドだから 複おじの興味が続けばその話題が続くんだよ http://mevius.5ch.net/test/read.cgi/tech/1755247770/79
80: デフォルトの名無しさん [sage] 2025/08/25(月) 21:09:46.97 ID:KzDmCwhz ファンじゃなくて自演スレだから http://mevius.5ch.net/test/read.cgi/tech/1755247770/80
81: デフォルトの名無しさん [sage] 2025/08/27(水) 18:45:58.51 ID:s/5KNF71 タプルといえばzipとmultizipの方針の違いでVec指定の与え方が微妙差 let (counts, chars) = str.chars().sorted().dedup_with_count().unzip::<_, _, Vec<_>, Vec<_>>(); let (counts, chars) = str.chars().sorted().dedup_with_count().multiunzip::<(Vec<_>, Vec<_>)>(); http://mevius.5ch.net/test/read.cgi/tech/1755247770/81
82: デフォルトの名無しさん [sage] 2025/08/28(木) 10:55:22.21 ID:OS0cfYx9 抽象なんて「見たいものだけを見る」という程度の意味だからね もしメモリ管理が最大の関心事なら 抽象度が最も高いIUnknownにリファレンスカウント機能をつけていい http://mevius.5ch.net/test/read.cgi/tech/1755247770/82
83: デフォルトの名無しさん [sage] 2025/08/28(木) 11:58:26.45 ID:1IatnfJ+ >>81 左辺に型を書けばいいんだよ そのほうが読みやすいしタイプ数も少ない あとunzip/multiunzipはcollectでも代用可 http://mevius.5ch.net/test/read.cgi/tech/1755247770/83
84: デフォルトの名無しさん [sage] 2025/08/28(木) 15:40:44.35 ID:OS0cfYx9 なんで掛け算の引数には名前がないんだろう 順序を逆にできない理由が一目でわかるような名前があるなら名前をつけるべき http://mevius.5ch.net/test/read.cgi/tech/1755247770/84
85: デフォルトの名無しさん [sage] 2025/08/28(木) 20:43:02.31 ID:fdP0HyCm >>81 unzipはトレイトを使っていないため余分なパラメタが露出してしまってる multiunzipはトレイトMultiUnzipを collectはトレイトFromIteratorを使っている >>83 今年のRust 1.85からタプルもcollectできるようになったね http://mevius.5ch.net/test/read.cgi/tech/1755247770/85
86: デフォルトの名無しさん [sage] 2025/08/30(土) 05:57:20.14 ID:JBC8dN2M a * b * c は b や c のすぐ隣に目印があるからキーワード引数は不要だ mul(a, b, c) (* a b c) このような記法だけが、b c 付近で文法的サポートが不足している問題を抱えている http://mevius.5ch.net/test/read.cgi/tech/1755247770/86
87: デフォルトの名無しさん [sage] 2025/08/30(土) 23:22:46.71 ID:6bFj+97W >>55 namedtupleは廃れて今はdataclassを使う Rustでの#[derive(Debug, Hash, Ord)]付き構造体相当 結局Pythonでもそのへんはちゃんとしてほしいことになった http://mevius.5ch.net/test/read.cgi/tech/1755247770/87
88: デフォルトの名無しさん [sage] 2025/08/31(日) 09:51:10.58 ID:cF2U6lLu ハッシュ関数を使えば保守的GCが廃れる 確率を見たらカオスと思え http://mevius.5ch.net/test/read.cgi/tech/1755247770/88
89: デフォルトの名無しさん [sage] 2025/08/31(日) 10:00:25.50 ID:mJd+1ya1 >結局Pythonでもそのへんはちゃんとしてほしいことになった 誰か日本語に翻訳して http://mevius.5ch.net/test/read.cgi/tech/1755247770/89
90: デフォルトの名無しさん [sage] 2025/08/31(日) 10:52:20.39 ID:QUPYnWaR 足りない頭で必死に調べた複おじの努力を認めて差し上げろ それはともかく、一般にスクリプト言語ではタプルはあまり好まれず、辞書が好まれる傾向がある - ユーザーが辞書データ構造を使ってレコードを扱うことに慣れている - 辞書を扱うための簡便な構文が存在する場合が多い - 辞書と配列の速度やメモリ使用量の差が問題にならない - 値が増えた場合にランタイムエラーを引き起こす なお、dataclassは辞書に対する型付きのラッパーに過ぎない あくまでこれはスクリプト言語の事情であり、Rustのような静的言語においてはレコードはタプル(構造体は名前付きのタプルの一種)として実装することが基本であることに注意しなければならない http://mevius.5ch.net/test/read.cgi/tech/1755247770/90
91: デフォルトの名無しさん [sage] 2025/08/31(日) 17:32:35.66 ID:qrCON/OK 辞書かどうかは本質ではない 辞書として用いないことが圧倒的に多いため例えばV8では静的解析で判明するプロパティを構造体フィールドのように扱い実行するため辞書実装とは異なり速い http://mevius.5ch.net/test/read.cgi/tech/1755247770/91
92: デフォルトの名無しさん [sage] 2025/08/31(日) 18:15:49.65 ID:IkR/a1qs また的外れなレスだなぁ 結局複おじにもそのへんはちゃんとしてほしいことになった http://mevius.5ch.net/test/read.cgi/tech/1755247770/92
93: デフォルトの名無しさん [sage] 2025/08/31(日) 18:20:32.10 ID:yY4/9rZW >>91 V8のプロパティアクセスの最適化は基本的には静的解析に依存しないよ 同じプロパティが同じ順序で追加されたオブジェクトは同じ型と見做してキャッシュされたプロパティの位置を利用する あくまで辞書データ構造を前提としたままでキャッシュ戦略を工夫しているに過ぎない http://mevius.5ch.net/test/read.cgi/tech/1755247770/93
94: デフォルトの名無しさん [sage] 2025/08/31(日) 23:19:02.35 ID:cF2U6lLu 魔法の数字ではなく ちゃんとenumを使うことになった http://mevius.5ch.net/test/read.cgi/tech/1755247770/94
95: デフォルトの名無しさん [sage] 2025/08/31(日) 23:24:15.68 ID:Dds/cnqW Minimal Embedded FAT32 Driver - in Rust! https://www.youtube.com/watch?v=VcWXn8B9RoE http://mevius.5ch.net/test/read.cgi/tech/1755247770/95
96: デフォルトの名無しさん [] 2025/09/02(火) 22:34:52.76 ID:sEJ6dDWm 「Rust」の平均単価が3カ月連続上昇 エン・ジャパンがフリーランス案件の分析レポートを発表 https://atmarkit.itmedia.co.jp/ait/spv/2508/21/news045.html 開発言語別では、比較的新しい言語「Rust」が3カ月連続で平均単価を伸ばし、87万4000円(2025年6月比で4.4%増)で1位となった。 http://mevius.5ch.net/test/read.cgi/tech/1755247770/96
97: デフォルトの名無しさん [sage] 2025/09/03(水) 01:10:14.83 ID:rmZ6WmxL もういいよ http://mevius.5ch.net/test/read.cgi/tech/1755247770/97
98: デフォルトの名無しさん [sage] 2025/09/03(水) 06:18:41.58 ID:Myuv+TwW Rustがトップになる予想が当たったね http://mevius.5ch.net/test/read.cgi/tech/1755247770/98
99: デフォルトの名無しさん [sage] 2025/09/03(水) 08:43:05.32 ID:Ypa4ifGO これからどんどん増えるで http://mevius.5ch.net/test/read.cgi/tech/1755247770/99
100: デフォルトの名無しさん [sage] 2025/09/03(水) 10:27:14.93 ID:pUgFa8ls https://corp.en-japan.com/newsrelease/2025/42699.html Goもそうだけどレベル低い人(特定言語の習熟度ではなく基礎的な技術力の観点で)お断り案件がほとんどだから単価が高く出る つまり裾野が狭いことを意味するわけで、決して手放しに歓迎すべきことではない 特にRustがこれから食っていかなければならないのは最下位付近にいるC++とCの領域だから、普及していけば単価は大幅に低下する http://mevius.5ch.net/test/read.cgi/tech/1755247770/100
101: デフォルトの名無しさん [sage] 2025/09/03(水) 10:39:55.94 ID:slTkF8Pj > 全体として、比較的新しい言語である「Rust」や「Go言語」、「Kotlin」などが高い単価を維持しており、市場での需要の高さがうかがえます。 これかなり違和感あるなあ このへんのメンツの単価が高いのはつまるところ案件の難易度が高いからで、 下の方のコモディティ言語と同じように需給バランスで単価が決まると考えてるのは実態を知らないんだろうなと思う http://mevius.5ch.net/test/read.cgi/tech/1755247770/101
102: デフォルトの名無しさん [sage] 2025/09/03(水) 11:43:31.30 ID:FcGJkFCi >>100 C系はバカでも書けるから安いんだよ レベルが低い人はRustが難しいと感じて挫折や一部アンチ化 一方で今後求められつつあるのが安全で速いRust http://mevius.5ch.net/test/read.cgi/tech/1755247770/102
103: デフォルトの名無しさん [] 2025/09/03(水) 12:11:36.01 ID:UDH6IOq3 もしかしてRustを誰も使ってないのはレベル低い人だらけだから? http://mevius.5ch.net/test/read.cgi/tech/1755247770/103
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 126 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.024s