公式
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 part27
https://mevius.5ch.net/test/read.cgi/tech/1733146370/
ワッチョイスレ
プログラミング言語 Rust 4【ワッチョイ】
https://mevius.5ch.net/test/read.cgi/tech/1514107621/
探検
Rust part28
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2025/03/24(月) 17:37:00.15ID:NJwebgj2388デフォルトの名無しさん
2025/04/09(水) 22:16:00.82ID:13Xj1tSa 名前忘れたけど、構文がRustでGC付きの言語が発表されてたよね
389デフォルトの名無しさん
2025/04/09(水) 22:16:14.95ID:a0uoZNgJ もう一度言うけど
知ってる人は知ってるだけなのでそれが偉いと言う話ではない
知ってる人は知ってるだけなのでそれが偉いと言う話ではない
390デフォルトの名無しさん
2025/04/09(水) 22:18:40.23ID:ZMWXeYiA391デフォルトの名無しさん
2025/04/09(水) 22:20:09.93ID:a0uoZNgJ その硬くなっていない頭でtsもjsもpythonも日常的に使えているのかなあ???
392デフォルトの名無しさん
2025/04/09(水) 22:25:09.60ID:ad8YJVBj393デフォルトの名無しさん
2025/04/09(水) 22:27:48.21ID:czqUXFNF GCって多少のパフォーマンスと引き換えにC/C++の面倒を大きく減らすものだからな
Javaが流行った理由もそれだし
Rustなら借用チェッカが安全性の問題をうまく解決するといっても、GCに慣れてる人からすれば、他の言語ではそもそも問題にならないようなものを課題として取り上げて解いてるだけに思えるかもしれない
C/C++の速度が必要な分野ならRustは強力だけど、それ以外の分野だと学習コストや面倒くささが上回ると思うのもまあわかる
Javaが流行った理由もそれだし
Rustなら借用チェッカが安全性の問題をうまく解決するといっても、GCに慣れてる人からすれば、他の言語ではそもそも問題にならないようなものを課題として取り上げて解いてるだけに思えるかもしれない
C/C++の速度が必要な分野ならRustは強力だけど、それ以外の分野だと学習コストや面倒くささが上回ると思うのもまあわかる
394デフォルトの名無しさん
2025/04/09(水) 22:31:27.91ID:ad8YJVBj ワイの周りにもRustは勧められないんよな。趣味でやるベエ
395デフォルトの名無しさん
2025/04/09(水) 22:33:41.47ID:czqUXFNF396デフォルトの名無しさん
2025/04/09(水) 22:51:34.96ID:ad8YJVBj Beam VM上のか
397デフォルトの名無しさん
2025/04/09(水) 22:57:26.37ID:vrO9vcWo398デフォルトの名無しさん
2025/04/09(水) 23:23:57.52ID:huhl+UxL >>397
「境界」は辞書を引くとわかるけど
「何かと何かの境界」という二者間の意味二次的であって
「対象となる範囲の境界」が原義なんだよ
これは古語辞典だとよりはっきりして
境界は「自分の認識の及ぶ対象・範囲」が原義で
更に「自分の能力の及ぶ範囲」という意味が加わってくる
トレイト境界はもちろん二者間ではなく原義の方
「境界」は辞書を引くとわかるけど
「何かと何かの境界」という二者間の意味二次的であって
「対象となる範囲の境界」が原義なんだよ
これは古語辞典だとよりはっきりして
境界は「自分の認識の及ぶ対象・範囲」が原義で
更に「自分の能力の及ぶ範囲」という意味が加わってくる
トレイト境界はもちろん二者間ではなく原義の方
399デフォルトの名無しさん
2025/04/09(水) 23:26:38.18ID:p9TCxcQX 古語辞典?w
400デフォルトの名無しさん
2025/04/09(水) 23:32:36.15ID:3/XtwXUj 意味が全然分からないレベルになるともう実質的に名前がないのと同じ
名前がないものは世の中にいくらでもある
名前がないものは世の中にいくらでもある
401デフォルトの名無しさん
2025/04/09(水) 23:32:43.95ID:huhl+UxL これは一般生活で使われる境界も同じ例えば「土地の境界」といえば(自分もしくは対象の)土地の境界であり
特定の誰々さんの土地との境界ではない
「市の境界」も同じでその市の範囲を意味していてどこか特定の市町村との境界ではない
トレイト境界も同じでそのトレイトの効力やカバーする範囲や領域
特定の誰々さんの土地との境界ではない
「市の境界」も同じでその市の範囲を意味していてどこか特定の市町村との境界ではない
トレイト境界も同じでそのトレイトの効力やカバーする範囲や領域
402デフォルトの名無しさん
2025/04/09(水) 23:35:09.82ID:p9TCxcQX なんか自他境界なさそう
403デフォルトの名無しさん
2025/04/09(水) 23:36:43.93ID:D9djoT/y 領域展開
404デフォルトの名無しさん
2025/04/10(木) 01:14:23.84ID:BQ7YpPB/ >>398
>境界は「自分の認識の及ぶ対象・範囲」が原義で
>更に「自分の能力の及ぶ範囲」という意味が加わってくる
それは仏教用語でキョウガイと読む
現代日本語の境界(キョウカイ)にはそのような意味はない
境界(キョウカイ)の原義でもなく違う言葉
仏語を当ててトレイトキョウガイと読ませたかったのか?
>境界は「自分の認識の及ぶ対象・範囲」が原義で
>更に「自分の能力の及ぶ範囲」という意味が加わってくる
それは仏教用語でキョウガイと読む
現代日本語の境界(キョウカイ)にはそのような意味はない
境界(キョウカイ)の原義でもなく違う言葉
仏語を当ててトレイトキョウガイと読ませたかったのか?
405デフォルトの名無しさん
2025/04/10(木) 01:18:20.37ID:BQ7YpPB/ boundsも古典英語なら現代日本語の境界(キョウカイ)の意味もあるが
現代英語には境界(キョウカイ)の意味は基本的にはない
日本語の境界はboundary
現代英語でboundsを境界と意訳してもいいのは
out of boundsやwithin boundsなど
前置詞を伴って範囲の内か外だけに焦点があたっている状況のみ
現代英語には境界(キョウカイ)の意味は基本的にはない
日本語の境界はboundary
現代英語でboundsを境界と意訳してもいいのは
out of boundsやwithin boundsなど
前置詞を伴って範囲の内か外だけに焦点があたっている状況のみ
406デフォルトの名無しさん
2025/04/10(木) 01:24:45.88ID:WYZDSkTO 飽きたからXで訳者に凸してきなよ
407デフォルトの名無しさん
2025/04/10(木) 01:29:38.95ID:BQ7YpPB/ >>401
これもなんとも無理やりだなぁ
現代日本語における境界は境・境目・境界線のことで基本的に「線」の概念
境界という線により区切られた結果としてその内側の範囲や領域ができるが
境界という言葉が区切られた結果としてできる内側の範囲や領域を示すわけではない
境界(キョウカイ)という概念は境界を通して接している二つのものがなければ成り立たない
これもなんとも無理やりだなぁ
現代日本語における境界は境・境目・境界線のことで基本的に「線」の概念
境界という線により区切られた結果としてその内側の範囲や領域ができるが
境界という言葉が区切られた結果としてできる内側の範囲や領域を示すわけではない
境界(キョウカイ)という概念は境界を通して接している二つのものがなければ成り立たない
408デフォルトの名無しさん
2025/04/10(木) 09:28:59.90ID:sl4+KigV >>381
そんなことしたらゴミが増えるだけ
そんなことしたらゴミが増えるだけ
409デフォルトの名無しさん
2025/04/10(木) 09:34:45.39ID:sl4+KigV >>398
水平線地平線がしっくりくる
水平線地平線がしっくりくる
410デフォルトの名無しさん
2025/04/10(木) 09:37:18.05ID:V2R2z6S+ で、結局Windowsアプリ用としてのGUIフレームワークは どれがおすすめなん?
411デフォルトの名無しさん
2025/04/10(木) 10:02:20.15ID:sl4+KigV412デフォルトの名無しさん
2025/04/10(木) 11:31:17.20ID:sl4+KigV >>324
>Rust での解説はこれから市民権を得ていくでしょうか。もしそうなるとすると、自分が一番馴染みがある言語で学べることになりとてもワクワクします。
今後こんな糞スペックのが増えてくるんだろうな
>Rust での解説はこれから市民権を得ていくでしょうか。もしそうなるとすると、自分が一番馴染みがある言語で学べることになりとてもワクワクします。
今後こんな糞スペックのが増えてくるんだろうな
413デフォルトの名無しさん
2025/04/10(木) 11:43:14.72ID:Qbt6Bavv >>410
Tauri以外にあるの?
Tauri以外にあるの?
414デフォルトの名無しさん
2025/04/10(木) 11:46:18.80ID:5Ye07Eg9 >>410
いつの間にか、eguiで日本語インライン入力できるようになっている
いつの間にか、eguiで日本語インライン入力できるようになっている
415デフォルトの名無しさん
2025/04/10(木) 12:11:08.05ID:Vy3uEQTj >>410
個人的には slint が使いやすいとは思ってるが、 Windows の知識が充分にあるという前提なら windows-rs 経由で API を直接に呼ぶのが楽という人もいると思う。
個人的には slint が使いやすいとは思ってるが、 Windows の知識が充分にあるという前提なら windows-rs 経由で API を直接に呼ぶのが楽という人もいると思う。
416デフォルトの名無しさん
2025/04/10(木) 16:33:28.17ID:SZxFOwGT >>369
その通り
ちなみにRustには4つの関数があり
{fn} キャプチャのない関数
Fn - {fn} キャプチャ時の値を参照してしまう関数
FnMut - Fn キャプチャ時の値を書き換えてしまう関数
FnOnce - FnMut キャプチャ時の値を消費してしまい1度しか呼べない関数
その通り
ちなみにRustには4つの関数があり
{fn} キャプチャのない関数
Fn - {fn} キャプチャ時の値を参照してしまう関数
FnMut - Fn キャプチャ時の値を書き換えてしまう関数
FnOnce - FnMut キャプチャ時の値を消費してしまい1度しか呼べない関数
417デフォルトの名無しさん
2025/04/10(木) 18:07:01.46ID:P/kW37Nh 自分と会話し始めちゃったよw
それも全く意味がない会話を
それも全く意味がない会話を
418デフォルトの名無しさん
2025/04/10(木) 18:27:16.96ID:mUlJ1kr4 foo.bar()はfooを移動したのか参照したのか見た目で区別できない
移動かと思ったらじつはCopyだったりするし
foo()も同じ
移動かと思ったらじつはCopyだったりするし
foo()も同じ
419デフォルトの名無しさん
2025/04/10(木) 19:11:04.12ID:6uiVDoq6420デフォルトの名無しさん
2025/04/10(木) 22:19:50.16ID:5Ye07Eg9 >>418
そういうのはIDEがやる仕事でしょ
そういうのはIDEがやる仕事でしょ
421デフォルトの名無しさん
2025/04/10(木) 22:42:29.86ID:mBJ9AdtP オープンソースの翻訳にいちゃもん付ける活動してるのは技術評論社だっけ?
本買え本って言ってたよな
本買え本って言ってたよな
422デフォルトの名無しさん
2025/04/11(金) 11:22:05.80ID:7EX5STKN423デフォルトの名無しさん
2025/04/11(金) 11:46:40.40ID:HX71i0gu 共感できることに共感するのは有能だがどんな妄想にも共感するやつは無能だ
424デフォルトの名無しさん
2025/04/11(金) 12:20:13.15ID:yx7ZxPSb いいかげん中身のない主張やめて、とっととthe rust book 最新版を翻訳して用語を統一しろ。
the rust book 翻訳を古いまま放置して、偉そうに翻訳を語るなよ。
the rust book 翻訳を古いまま放置して、偉そうに翻訳を語るなよ。
425デフォルトの名無しさん
2025/04/11(金) 12:57:51.71ID:mXJpW1vK Rust bookみたいな聖書があるのに聖書の翻訳が気に入らないからと文句つける奴は頭おかしいわ
トレイト境界でもういいだろ。聖書にそう書いてあんだよ
トレイト境界でもういいだろ。聖書にそう書いてあんだよ
426デフォルトの名無しさん
2025/04/11(金) 13:02:09.03ID:/8vt7NNX 今の時間crates.ioメンテでもしてんのか?
反応クッソ遅いんだが
反応クッソ遅いんだが
427デフォルトの名無しさん
2025/04/11(金) 16:09:31.37ID:Dvk3nAyu 日本語の本読んでる時点でダメだ。原書の話題だけ頼む
428デフォルトの名無しさん
2025/04/11(金) 16:29:00.90ID:9opbn0me >>427
原著が日本語ならこんな翻訳の問題起きなかったって言いたそうだけど違うぞ
どの言語だろうと聖書に書かれた内容に食ってかかる反体制派とか左翼っぽいのが生まれる社会土壌の問題だ
英語が母国語でもこういうタイプの輩は、boundsという用語を使ったことに対して反抗してconstraintsで統一しろとか騒ぐ
言語の問題なんかじゃ無い。心の問題であり態度の問題だ
原著が日本語ならこんな翻訳の問題起きなかったって言いたそうだけど違うぞ
どの言語だろうと聖書に書かれた内容に食ってかかる反体制派とか左翼っぽいのが生まれる社会土壌の問題だ
英語が母国語でもこういうタイプの輩は、boundsという用語を使ったことに対して反抗してconstraintsで統一しろとか騒ぐ
言語の問題なんかじゃ無い。心の問題であり態度の問題だ
429デフォルトの名無しさん
2025/04/11(金) 16:32:35.54ID:Dvk3nAyu いや、面倒だからフィルタになるでしょ
って程度だよ
このスレ自体を英語だけにしてもいいぞ
って程度だよ
このスレ自体を英語だけにしてもいいぞ
430デフォルトの名無しさん
2025/04/11(金) 16:50:22.75ID:UKjoRWuA431デフォルトの名無しさん
2025/04/11(金) 18:38:06.51ID:nsFUcEzJ 境界信者はやっぱり宗教詳しいんだね
学会や壺も他宗教について詳しいもんね
学会や壺も他宗教について詳しいもんね
432デフォルトの名無しさん
2025/04/11(金) 18:43:51.54ID:Lf3Jev+n rustの仕様見たけど肝心なlifetimeの情報が網羅されてなくて本当にこれが仕様として働くのか疑問に思った
433デフォルトの名無しさん
2025/04/11(金) 19:27:00.96ID:HX71i0gu なんでも動的にチェックする簡易な実装を考えたほうがわかりやすい
434デフォルトの名無しさん
2025/04/11(金) 21:09:53.34ID:dq5UKFva435デフォルトの名無しさん
2025/04/11(金) 22:11:47.10ID:cSKsCytU436デフォルトの名無しさん
2025/04/12(土) 06:43:32.65ID:IMDrBc8a USO-800
437デフォルトの名無しさん
2025/04/12(土) 11:10:12.54ID:mEwUzKIx Rust境界例
438デフォルトの名無しさん
2025/04/12(土) 12:46:42.80ID:G/Z86Z6L439デフォルトの名無しさん
2025/04/12(土) 13:53:53.64ID:Mda8ZghK このスレの結論
trait boundの翻訳の議論を除けばRustには欠点がないと思っていいかな?
trait boundの翻訳の議論を除けばRustには欠点がないと思っていいかな?
440デフォルトの名無しさん
2025/04/12(土) 13:55:52.66ID:0buiik+f GC言語経験者には、難しいというのは欠点かも
441デフォルトの名無しさん
2025/04/12(土) 14:14:59.77ID:6rJMqtUM 文字列処理の経験者は案外GCを使わない経験をしているはず
だが文字列指向を捨てるよう訓練された人が一番苦労する
だが文字列指向を捨てるよう訓練された人が一番苦労する
442デフォルトの名無しさん
2025/04/12(土) 14:32:57.78ID:fDddIcJn toastyっていつになったら使えるようになるの?
443デフォルトの名無しさん
2025/04/12(土) 16:12:49.92ID:l+qhzSG7 >>442
toastyがどこまでやるのか途上でわからんけどさ
O/Rマッパーを名乗ってるから単純なものには使えても一般的にはORMの様々な欠点を抱えるっしょ
だからORMではないSQLxが人気だけど非同期ORMの需要もあるから既にSeaORMやDiesel-asyncがある状況で
新たにtoastyをtokio直下プロジェクトで進めようとしてるのはRDBよりむしろNoSQL対策がメインと見ていいのかね
toastyがどこまでやるのか途上でわからんけどさ
O/Rマッパーを名乗ってるから単純なものには使えても一般的にはORMの様々な欠点を抱えるっしょ
だからORMではないSQLxが人気だけど非同期ORMの需要もあるから既にSeaORMやDiesel-asyncがある状況で
新たにtoastyをtokio直下プロジェクトで進めようとしてるのはRDBよりむしろNoSQL対策がメインと見ていいのかね
444デフォルトの名無しさん
2025/04/12(土) 16:14:41.99ID:kMx1QAlk >>435
品質管理系の規格 (ISO9001) だと「発生したトラブル (不良品) に対して対策をする手続きが存在していてその手続き通りに実施しているか」を審査されるが、対策の効果や妥当性は審査対象ではない。
実際問題として作ってる製品の性質によるから審査しようがないし。
26262 がどういう性質のものなのかググったくらいでは全然わからんが 9001 と同じようにメタな部分を審査するんじゃないかな……。
ダングリング防止の機能があることなどは審査されてもどういうメカニズムで実現されるかは審査対象外なのかもしれん。
品質管理系の規格 (ISO9001) だと「発生したトラブル (不良品) に対して対策をする手続きが存在していてその手続き通りに実施しているか」を審査されるが、対策の効果や妥当性は審査対象ではない。
実際問題として作ってる製品の性質によるから審査しようがないし。
26262 がどういう性質のものなのかググったくらいでは全然わからんが 9001 と同じようにメタな部分を審査するんじゃないかな……。
ダングリング防止の機能があることなどは審査されてもどういうメカニズムで実現されるかは審査対象外なのかもしれん。
445デフォルトの名無しさん
2025/04/12(土) 17:46:03.85ID:GwdhqqDc >>438
まともな回答じゃなくても妥当性を判断する材料にはなる
まともな回答じゃなくても妥当性を判断する材料にはなる
446デフォルトの名無しさん
2025/04/12(土) 20:51:24.81ID:6rJMqtUM ニューメディアには二種類ある
知りたいことだけを問い合わせるメディアと
従来は網羅できなかったことを網羅するメディア
知りたいことだけを問い合わせるメディアと
従来は網羅できなかったことを網羅するメディア
447デフォルトの名無しさん
2025/04/13(日) 10:15:42.59ID:9+E6vnhP これよな
そう思えるのはお前も信者だからだろ
結局のところRust信者はポリコレ過ぎる
これも「政治的に」Linusにチクって解決しようとしたところ、ブチ切れられただけ
記事の話が全部本当だとして総合的に推定すると、
Rustから叩く為のラッパ的な物を用意しようとしたところ政治闘争となり、両者辞任の痛み分け、
カーネル自体のコードには今後ともRustは無し、という所ではないかと
これは「支持」ではなく「容認」だろうよ
ただまあ、何でそんな物が『カーネル側に』必要なのか技術的に疑問ではあるがな
RustからCのAPIを叩けないなんて事はあり得ないだろうし、仮にそうだとしても、API変換をRust側でやればよかっただけの話
俺はHellwigの方が正しいと思う。まあLinus案も落とし所としてはありなだろうけど
(というかLinusはこの辺が断然上手い)
Rust信者は、技術的理由ではなく、非Rust話者を排除する為にRustを使う
TypeScriptにも似たような奴はいると思うけど
そう思えるのはお前も信者だからだろ
結局のところRust信者はポリコレ過ぎる
これも「政治的に」Linusにチクって解決しようとしたところ、ブチ切れられただけ
記事の話が全部本当だとして総合的に推定すると、
Rustから叩く為のラッパ的な物を用意しようとしたところ政治闘争となり、両者辞任の痛み分け、
カーネル自体のコードには今後ともRustは無し、という所ではないかと
これは「支持」ではなく「容認」だろうよ
ただまあ、何でそんな物が『カーネル側に』必要なのか技術的に疑問ではあるがな
RustからCのAPIを叩けないなんて事はあり得ないだろうし、仮にそうだとしても、API変換をRust側でやればよかっただけの話
俺はHellwigの方が正しいと思う。まあLinus案も落とし所としてはありなだろうけど
(というかLinusはこの辺が断然上手い)
Rust信者は、技術的理由ではなく、非Rust話者を排除する為にRustを使う
TypeScriptにも似たような奴はいると思うけど
448デフォルトの名無しさん
2025/04/13(日) 13:34:29.88ID:2lLYGSci ボランティア翻訳に訳の分からんいちゃもん付けるのはたいてい技術評論社
奴らは本を売りたいだけだから無視して良いと思う
奴らは本を売りたいだけだから無視して良いと思う
449デフォルトの名無しさん
2025/04/13(日) 13:40:39.46ID:4yNzrwxr 抽象化モデルが非効率だったと何年もたってから発覚したときにはそのモデルに依存しきっていて全体の書き直ししか修正しようがないということをリーナスは書いている。
プログラムを凝らずに書けることが良いというよりは、凝ったプログラムが柔軟性がない (修正しにくい) ことを問題視してるように見える。
実行効率はやってみないとわからん場合もあるし事情が変わる場合もあるから、ある時点で設計として真っ当であってもずっとそうだとは限らんのだな。
プログラムを凝らずに書けることが良いというよりは、凝ったプログラムが柔軟性がない (修正しにくい) ことを問題視してるように見える。
実行効率はやってみないとわからん場合もあるし事情が変わる場合もあるから、ある時点で設計として真っ当であってもずっとそうだとは限らんのだな。
450デフォルトの名無しさん
2025/04/13(日) 15:14:15.49ID:1Z67A7m7451デフォルトの名無しさん
2025/04/13(日) 15:55:50.50ID:c6Sg9WHG 突然メルカリのリンクを貼られてドン引き
452デフォルトの名無しさん
2025/04/13(日) 16:47:42.50ID:h93U4QKi 会社もメルカリで売ってるのかすごいな
453デフォルトの名無しさん
2025/04/13(日) 17:58:50.92ID:gxlD4b+C SDGsの時代だからね
454デフォルトの名無しさん
2025/04/14(月) 14:43:52.73ID:NMEkC5si ますます怪しいな
455デフォルトの名無しさん
2025/04/14(月) 16:15:10.37ID:w0ewOdij ボランティアは文句つけられるけど
うちから出せば金が出るよってことか
うちから出せば金が出るよってことか
456デフォルトの名無しさん
2025/04/14(月) 16:17:16.70ID:w0ewOdij ボランティア叩き企業なのに
指摘されて即座に擁護が湧くのが怪しいと思う
指摘されて即座に擁護が湧くのが怪しいと思う
457デフォルトの名無しさん
2025/04/14(月) 23:45:08.90ID:5Y8yian5 >>447
そうではなくて、
既に進みつつある(デバイスドライバを含めた)カーネルモジュールのRust化の利便性のために、
Rust用のAPIをLinux公式としてサポートする方針でLinusもOKを出したんだよ。
カーネルのコア部分はC言語のままだけど、各カーネルモジュールは新規分からRustへ置き換わっていってる。
そうではなくて、
既に進みつつある(デバイスドライバを含めた)カーネルモジュールのRust化の利便性のために、
Rust用のAPIをLinux公式としてサポートする方針でLinusもOKを出したんだよ。
カーネルのコア部分はC言語のままだけど、各カーネルモジュールは新規分からRustへ置き換わっていってる。
458デフォルトの名無しさん
2025/04/14(月) 23:48:27.55ID:bfiqihn+ マジかー
お爺ちゃん達Rustやりだすの?
お爺ちゃん達Rustやりだすの?
459デフォルトの名無しさん
2025/04/15(火) 10:08:30.99ID:CbsPdu2a Option<Ordering> を得たいときに i64 とか i32 の integer 型の condition があるとして
let hoge =
if condition == 0 { Some(Ordering::Equal) }
else if condition < 0 { Some(Ordering::Less) }
else if condition > 0 { Some(Ordering::Greater) }
else { None }
;
で hoge に Option<Ordering> が得られるのですが
hoge を反転させた状態を hoge から直接得るにはどうすれば良いのでしょうか
上の例のコードで -condition に置き換えたときに得られる結果と同じものを
コードの重複を避けて hoge から !hoge みたいに取得したいのです
let hoge =
if condition == 0 { Some(Ordering::Equal) }
else if condition < 0 { Some(Ordering::Less) }
else if condition > 0 { Some(Ordering::Greater) }
else { None }
;
で hoge に Option<Ordering> が得られるのですが
hoge を反転させた状態を hoge から直接得るにはどうすれば良いのでしょうか
上の例のコードで -condition に置き換えたときに得られる結果と同じものを
コードの重複を避けて hoge から !hoge みたいに取得したいのです
460デフォルトの名無しさん
2025/04/15(火) 10:42:57.35ID:5gq1dzTA hoge.map(Ordering::reverse)
461デフォルトの名無しさん
2025/04/15(火) 10:51:02.82ID:b7lMQ02q462デフォルトの名無しさん
2025/04/15(火) 11:01:31.96ID:l4YFawe/ 【脳科学】「政治行動の激しさ」に関連する脳回路の存在が研究で判明 [すらいむ★]
http://egg.5ch.net/test/read.cgi/scienceplus/1744637408/
上記のリンクをたどったリンク先の本文とコメントを読まれると・・・
余裕ありますか・・・
大々的にインターネット上にばらまかれました!
http://egg.5ch.net/test/read.cgi/scienceplus/1744637408/
上記のリンクをたどったリンク先の本文とコメントを読まれると・・・
余裕ありますか・・・
大々的にインターネット上にばらまかれました!
463デフォルトの名無しさん
2025/04/15(火) 17:11:35.23ID:8Z5eSApz PartialOrdを実装してるようには見えんよな
464デフォルトの名無しさん
2025/04/15(火) 21:09:18.10ID:r3aLc7OM XY問題っぽいけど本人がいいなら別にいいんじゃね
465デフォルトの名無しさん
2025/04/15(火) 23:20:57.63ID:I/RUKS+a >>459
それらi32やi64はOrd境界を満たしている
そしてOrdにはsupertrateとしてのトレイト境界PartialOrdがある
まずそのifの4分岐を使わずともx.partial_cmp(&0)でOption<Ordering>を得ることができる
ただしOrdも満たす整数型では常にSomeとなりNoneになることはない
一方でf64などの浮動小数点は!Ordなのでpartial_cmpでNoneが返りうる
自分でstruct Pair(i32, i32)を作り二つのi32のcmpが同じ時のみpartial_cmpをSomeにする型等も同様にNoneが返りうる
そのためにPartialOrdとOrd(: PartialOrd)の二段階に分かれている
今回のi32型やi64型はOrdも実装されているためNoneが返ることは絶対にない
したがって今回はx.cmp(&0)でOrderingを返すのが正しい
それらi32やi64はOrd境界を満たしている
そしてOrdにはsupertrateとしてのトレイト境界PartialOrdがある
まずそのifの4分岐を使わずともx.partial_cmp(&0)でOption<Ordering>を得ることができる
ただしOrdも満たす整数型では常にSomeとなりNoneになることはない
一方でf64などの浮動小数点は!Ordなのでpartial_cmpでNoneが返りうる
自分でstruct Pair(i32, i32)を作り二つのi32のcmpが同じ時のみpartial_cmpをSomeにする型等も同様にNoneが返りうる
そのためにPartialOrdとOrd(: PartialOrd)の二段階に分かれている
今回のi32型やi64型はOrdも実装されているためNoneが返ることは絶対にない
したがって今回はx.cmp(&0)でOrderingを返すのが正しい
466デフォルトの名無しさん
2025/04/16(水) 00:32:42.55ID:BZ2/m9bV >それらi32やi64はOrd境界を満たしている
トレイト制約とトレイト実装の区別ができてないやつをちょくちょく見かけるけどあれ境界本の影響だったのか
トレイト制約とトレイト実装の区別ができてないやつをちょくちょく見かけるけどあれ境界本の影響だったのか
467デフォルトの名無しさん
2025/04/16(水) 00:40:00.05ID:nlneFEtY ある型がXxx境界を満たすこと=その型がXxxを実装していること、だから正しいよね
468デフォルトの名無しさん
2025/04/16(水) 09:39:47.23ID:VD2CYluq 境界を満たすことって表現が気持ち悪い
日本語的じゃない
区域に含まれるようでいてそういう話でもない
日本語的じゃない
区域に含まれるようでいてそういう話でもない
469デフォルトの名無しさん
2025/04/16(水) 10:00:02.42ID:kz9c6vLk470デフォルトの名無しさん
2025/04/16(水) 11:16:05.15ID:DaU8fra8 明らかに間違った言葉を使っていても”テクニカルタームってそういうもんなので”で済ませるメンタリティの持ち主が誤訳を生み出して広めるってことだな
役に立つ誤訳ならいいけど>>465からも分かるように境界は足を引っ張る誤訳だから早く止めるに越したことはない
役に立つ誤訳ならいいけど>>465からも分かるように境界は足を引っ張る誤訳だから早く止めるに越したことはない
471デフォルトの名無しさん
2025/04/16(水) 11:28:23.19ID:aXNp1hi+ traitボヨヨ~ンでいいよ。
472デフォルトの名無しさん
2025/04/16(水) 11:30:24.19ID:PbGbU7xO 普通にC#/TypeScript/Kotlinあたりで採用されているconstraint: 制約 でよかったと思うけどね
Rustは変な選民意識が足を引っ張っている
Rustは変な選民意識が足を引っ張っている
473デフォルトの名無しさん
2025/04/16(水) 11:33:26.57ID:aXNp1hi+ Cの置き換え言語に高尚な意識は要らん
474デフォルトの名無しさん
2025/04/16(水) 11:34:30.78ID:aXNp1hi+ 組込みやってる人達と接点は持ったほうがいいね
475デフォルトの名無しさん
2025/04/16(水) 12:15:29.62ID:zTEGEKkW くだらない議論する労力あるならとっととthe rust book 最新版を翻訳して用語統一しろよ。
476デフォルトの名無しさん
2025/04/16(水) 12:22:24.48ID:D06utXB5 プログラム という単語自体がもうおかしいからな
そこに目を瞑ってる時点で同じ穴の狢よ
そこに目を瞑ってる時点で同じ穴の狢よ
477デフォルトの名無しさん
2025/04/16(水) 12:41:52.97ID:ApyifYby478デフォルトの名無しさん
2025/04/16(水) 12:48:16.89ID:QI1tlKT9479デフォルトの名無しさん
2025/04/16(水) 15:44:17.59ID:PbGbU7xO 意識高い系プログラミング言語界隈はbindを多用しすぎていて曖昧になってしまっているのは問題
ネイティブにとってクールで知的な語感なのか知らんがどんだけ束縛プレイ好きなんだよ
ネイティブにとってクールで知的な語感なのか知らんがどんだけ束縛プレイ好きなんだよ
480デフォルトの名無しさん
2025/04/16(水) 16:00:15.57ID:aXNp1hi+ 緊縛緊縛
481デフォルトの名無しさん
2025/04/16(水) 18:39:21.33ID:VD2CYluq AとBの境界を満たすって意味がもうすでに訳が分からないので気持ち悪い
482デフォルトの名無しさん
2025/04/16(水) 19:25:04.78ID:vwXsH1ob 上界下界
483デフォルトの名無しさん
2025/04/16(水) 19:28:02.69ID:VD2CYluq AとBの条件を満たすならわかる
AとBの境界を満たすのは意味不明
Aの境界を満たすですら意味不明
AとBの境界を満たすのは意味不明
Aの境界を満たすですら意味不明
484デフォルトの名無しさん
2025/04/16(水) 19:31:37.92ID:vwXsH1ob 簡単な概念に難しい言葉使いすぎ。共和党党員でも理解出来るdealみたいな簡単な単語にする
computerとかラテン語っぽいのは嫌われちゃうぞ
computerとかラテン語っぽいのは嫌われちゃうぞ
485デフォルトの名無しさん
2025/04/16(水) 21:14:58.28ID:kz9c6vLk テクニカルタームってのは「その分野に固有の定義がある語」なので日常用語の意味で解釈されないようにしなきゃならないんだよ。
その分野を学んだことがない初心者でも自然に読めてしまうのは用語の選定が失敗した証だとも言える。
法律用語の「悪意」「ないし」あたりは日常用語とは明瞭に意味が異なるのに日常用語としても解釈できてしまうので良くない例だ。
その一方では全く由来のないデタラメに作り出した語は単純に言いにくいし覚えにくい。
境界と言うかわりにププイータとかフニャコソとか言ったって (それで統一されるなら) 辻褄は合うが、さすがにそれはあんまりというものだろう。
そういう微妙な機微を踏まえて選定するものなんだよ。
その分野を学んだことがない初心者でも自然に読めてしまうのは用語の選定が失敗した証だとも言える。
法律用語の「悪意」「ないし」あたりは日常用語とは明瞭に意味が異なるのに日常用語としても解釈できてしまうので良くない例だ。
その一方では全く由来のないデタラメに作り出した語は単純に言いにくいし覚えにくい。
境界と言うかわりにププイータとかフニャコソとか言ったって (それで統一されるなら) 辻褄は合うが、さすがにそれはあんまりというものだろう。
そういう微妙な機微を踏まえて選定するものなんだよ。
486デフォルトの名無しさん
2025/04/16(水) 21:17:18.07ID:Owp+m7kF ボヨヨ~ン一択
487デフォルトの名無しさん
2025/04/16(水) 21:24:19.59ID:nlneFEtY >>477
それは最適化されるので大丈夫
「-condition」を使ってはいけない
これはi32::MIN時にoverflowする
したがってそのif文で書くならばGREATERとLESSを入れ替えるか
「condition > 0」と「condition < 0」を入れ替えることになる
しかしOrderingについて「if文で多分岐させる」こと自体がいけない
可読性に劣るとともにケアレスミスも起きうるだけでなく
生成コードを見ると以下の正解よりも少し長くなりえて遅くなりうることがわかる
正解はこれ
普通のまま: condition.partial_cmp(&0)
逆にする時: condition.partial_cmp(&0).map(|x| x.reverse())
逆にする時: condition.partial_cmp(&0).map(Ordering::reverse) 【上記と同じ】
いずれも生成コードがそのif文より短くなりうる
そして可読性も優れている
ただしconditionにi32やi64の整数型を使うとpartial_cmp()がNoneになることはない
Option<Ordering>を使う必要はなくcmp()でOrderingを得れば十分
真の正解はこれ
普通のまま: condition.cmp(&0)
逆にする時: condition.cmp(&0).reverse()
それは最適化されるので大丈夫
「-condition」を使ってはいけない
これはi32::MIN時にoverflowする
したがってそのif文で書くならばGREATERとLESSを入れ替えるか
「condition > 0」と「condition < 0」を入れ替えることになる
しかしOrderingについて「if文で多分岐させる」こと自体がいけない
可読性に劣るとともにケアレスミスも起きうるだけでなく
生成コードを見ると以下の正解よりも少し長くなりえて遅くなりうることがわかる
正解はこれ
普通のまま: condition.partial_cmp(&0)
逆にする時: condition.partial_cmp(&0).map(|x| x.reverse())
逆にする時: condition.partial_cmp(&0).map(Ordering::reverse) 【上記と同じ】
いずれも生成コードがそのif文より短くなりうる
そして可読性も優れている
ただしconditionにi32やi64の整数型を使うとpartial_cmp()がNoneになることはない
Option<Ordering>を使う必要はなくcmp()でOrderingを得れば十分
真の正解はこれ
普通のまま: condition.cmp(&0)
逆にする時: condition.cmp(&0).reverse()
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 高市首相、トランプ米大統領に「早期に会いたい」 日中関係悪化受け… ★4 [BFU★]
- 「もうキモくてキモくて…」29歳女性が語る“おぢアタック”の実態。「俺ならイケるかも」年下女性を狙う勘違い中年男性には共通点が [Hitzeschleier★]
- 【コメ】卸売業者「簡単に安売りできない」「大暴落起きれば大赤字に」 JA「新米の販売進度が近年になく遅い。コメの回転が悪い」 ★5 [Hitzeschleier★]
- テレビ朝日 本社から男性が転落し死亡。関連会社社員か 当たった通行人が左肩軽傷 [阿弥陀ヶ峰★]
- テレビ朝日本社から20~30代の関連会社社員とみられる男性が転落し死亡 六本木けやき坂通りの通行人にはけが人なし [少考さん★]
- 「これいいじゃん!!!」 セブン-イレブンの1620円で買える“1人用クリスマスケーキ”🎂に注目殺到「天才すぎる」 [パンナ・コッタ★]
- 【高市速報】中国、最後通牒 [308389511]
- 【高市速報】中国、世界の敵になり始めるwwwwwwwwwwwwww [308389511]
- 最近のVIP人いなくね?
- おまえらHDDの廃棄ってどうしてるの?
- しね✋ーーーーー☀
- 【速報】テレビ朝日本社から20代〜30代の男性が飛び降り自殺して死亡 東京・六本木 [597533159]
