Rust part17

■ このスレッドは過去ログ倉庫に格納されています
2022/10/06(木) 22:43:13.96ID:Re0G7B20
公式
https://www.rust-lang.org/
https://blog.rust-lang.org/
https://github.com/rust-lang/rust

Web上の実行環境
https://play.rust-lang.org

日本語の情報
https://rust-jp.rs/

※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 part16
2022/11/27(日) 21:42:32.15ID:lFtjfrKw
書いてもないことを勝手に読み取って燃え上がるタイプっぽいからいろいろ大変そうだね…
637デフォルトの名無しさん
垢版 |
2022/11/27(日) 21:46:47.14ID:ZNWbm5aC
次スレのテンプレから
日本語訳へのリンクは削除で
>>980
2022/11/27(日) 22:01:49.36ID:WnQW1xBa
翻訳の話題禁止も追加しといてくれ
639デフォルトの名無しさん
垢版 |
2022/11/27(日) 22:07:24.37ID:berpMXHg
協会立ち上げるならRust検定も必要だろね。
2022/11/27(日) 23:00:31.47ID:N2XeKp1i
協会立ち上がったらRustの保証範囲内で国内法損害賠償に応相談?
641デフォルトの名無しさん
垢版 |
2022/11/27(日) 23:11:10.98ID:berpMXHg
プログラムに起因する損害を全て保証すれば、Rustの名声も高まるだろうな。
642デフォルトの名無しさん
垢版 |
2022/11/27(日) 23:12:33.38ID:berpMXHg
Rustにおいてコンパイルを通るとは、すなわちバグが無いと保障されること。
と宣伝してたからな。
643デフォルトの名無しさん
垢版 |
2022/11/27(日) 23:14:15.63ID:berpMXHg
Rustサムライという映画があったような。
2022/11/27(日) 23:29:35.46ID:NsWs/3+t
rustの勉強に前に英語の勉強を
645デフォルトの名無しさん
垢版 |
2022/11/27(日) 23:44:50.88ID:berpMXHg
日本が世界に誇るRust言語。
646デフォルトの名無しさん
垢版 |
2022/11/28(月) 08:14:55.76ID:u/1oLUrZ
リンクトリストやグラフ構造が地獄という話題に戻ろう
GC無し言語のRuneはrelationという機能で解決してて素晴らしいのではないでしょうか?
有向グラフのコード例↓
https://github.com/google/rune/blob/main/doc/rune4python.md#the-directed-graph-example
2022/11/28(月) 09:39:33.33ID:MVujw8Ga
>>646
その言語が何を保証しているのか解説よろ
2022/11/28(月) 09:52:18.49ID:sJQkfuAF
>>643
ググったら何かいそうなのww
649デフォルトの名無しさん
垢版 |
2022/11/28(月) 11:16:45.67ID:BYOiineU
>>595
このジェネリック使った静的チェック付きのStateパターンは他の言語では見ないんだがRustと同じように実装できるんだろうか?
2022/11/28(月) 11:26:51.11ID:VpBGmQkI
>>646,649
保証がないなら無意味なのでは
2022/11/28(月) 11:48:49.74ID:ysUCvAXy
>>649
C++で言うところのタグディスパッチ
2022/11/28(月) 11:51:10.38ID:cwhW39fK
>>650
保証の有無は分からないんだけど、
仮になかったとしても、rustのunsafeと同じでプログラマの責任で自由にできる部分があるのは意味のあることでは
653デフォルトの名無しさん
垢版 |
2022/11/28(月) 12:37:21.67ID:B8Z/qDA7
>>651
タグディスパッチの場合はある状態がサポートしない操作もオーバーロードできるように書かないとダメじゃない?
それだと他の言語の一般的なStateパターンの実装方法と基本的には同じ
2022/11/28(月) 13:02:49.16ID:wvJe/vpd
>>653
一般的なStateパターンではなく、静的チェック付きのStateパターンだと何が保証されるのですか?
655デフォルトの名無しさん
垢版 |
2022/11/28(月) 14:37:02.92ID:goiShTMa
>>654
ある状態でサポートされてない操作を呼び出す(可能性のある)コードはコンパイル通らない
ジェネリックを使わない形の静的チェック付きStateパターン実装は他言語でもよく見るよ
2022/11/28(月) 15:00:23.08ID:pom2iae5
>>655 全体的にちょっと回りくどい表現で理解できません。

>>655は、Rustではコンパイルが通れば実行時エラーが起きない事が保証される、
という事を言っているのでしょうか?
(他の言語との比較ではなく)
2022/11/28(月) 15:00:27.21ID:pom2iae5
>>655 全体的にちょっと回りくどい表現で理解できません。

>>655は、Rustではコンパイルが通れば実行時エラーが起きない事が保証される、
という事を言っているのでしょうか?
(他の言語との比較ではなく)
2022/11/28(月) 15:01:45.50ID:pom2iae5
すみません。マウスのチャタリングかな。。
659デフォルトの名無しさん
垢版 |
2022/11/28(月) 15:23:59.23ID:mX/IntZU
>>656
Stateパターンに明るくないようならthe bookに2種類のStateパターンの実装が出てるので読んでみて
https://doc.rust-lang.org/book/ch17-03-oo-design-patterns.html

1つめの実装はある状態でサポートされない操作が呼び出されたら何もせずselfを返したり空文字列を返したりしてる
2つめの実装はある状態でサポートされない操作を呼び出すコードが有ればコンパイルエラー

>>595のやり方は2つめの実装をジェネリックとmarket typeを使ってPost<Draft>みたいな形にするもの
2022/11/28(月) 15:38:39.29ID:26iHAu1B
Modern C++ Design で Policy と呼ばれているパターンに近くない?
基本的な言語機能が違うので単純に比較はできないかもしれないけど。
2022/11/28(月) 16:45:22.66ID:gmgHbWWJ
>>659 ありがとうございます。おかげ様で理解が深まった気がします。

>>655が言っていることから理解したこと
静的"型"チェックの出来る言語なら適切なStateパターン実装を用いれば、
各状態に対応した型に実装されていない操作をコンパイルエラーで検出できる。

>>655が言及を意図的に避けている単語
保証
2022/11/28(月) 17:30:33.44ID:CGc28UZt
ん〜、Rustで保証を持ち出さないんだったら、>>649=653?は何をマウントしようとしたのかすら不明
あと655は別人じゃね?
2022/11/28(月) 17:41:27.83ID:/aP8eVMy
話の流れとは全く関係無いが、
twitterでは、rustで検索するとゲームが多数を占めてしまうので問題だが、
rustlang lang:ja
で検索すると割りと上手く行く。
2022/11/28(月) 17:53:52.03ID:x/Rrw6wy
ググったら一発で出てきた

doc.rust-jp.rs/rust-nomicon-ja/
>また、様々な種類の安全性や保証についてもたくさん説明します。
2022/11/28(月) 18:00:25.08ID:JOAT4gaO
>rust-jpあたりに私怨ある人
こんなやついるのか?保証に敏感な人はrust-jpの何を拗らせたの?濡れ衣でしょ
2022/11/28(月) 18:15:54.07ID:hRO2AtDN
言及する価値無し
2022/11/28(月) 18:19:33.94ID:9jvbe+te
誰もYesかNoか答えない(含む自分)5chアンケート調査

Rustではコンパイルが通れば実行時エラーが起きない事が保証される

(ちなみに拗らせてないしrustjpに私怨ありません. >>635のデマでは)
2022/11/28(月) 18:33:51.31ID:LDNjf6uN
実行時エラーを心配するって、どういうレベルの人たちだよ
2022/11/28(月) 18:35:25.02ID:kKtU7ET1
「Rustではコンパイルが通れば実行時エラーが起きない事が保証される」
これ自体が大嘘だろう?I/Oのある呼び出しは必ずRuntimeパニックの可能性があるし、実行時エラーが起きない事が保証されるのは
一部の実行時エラー(主にメモリー関連、例:配列インデックス範囲外など)であり、unsafeでもチェックが働く部分を強調してるだけ
2022/11/28(月) 18:47:02.30ID:cwhW39fK
そんなに慌てて連投なさらなくても大丈夫ですよ
おちついてください
2022/11/28(月) 18:48:22.90ID:/aP8eVMy
RustがC++に勝るのは(原因特定の難しい)メモリー関連バグが防げるというだけで、
その他のバグは防げない。
しかも、メモリー関連バグですら、実行段階で始めて発覚するものがRustでも
有りえる。ようは、メモリー関連バグの原因特定がし易くなるというだけで、
メモリー関連バグを綺麗さっぱりなくせるという意味ですらない。
また、FORTRAN、BASIC、Perl、Ruby、PHP、Java、C# などはメモリー安全で
メモリー関連エラーは発生しないが、古来、バグはいくらでも入る。
2022/11/28(月) 19:09:17.89ID:sJQkfuAF
twitter で検索するのって若者かな。
欲しい情報にたどり着けるのだろうか。
https://togetter.com/li/1977794
これを思い出した
2022/11/28(月) 20:00:00.32ID:nxIypHTQ
The Book にコンパイルは通るけど実行時エラーが出る例あるじゃん、何の話をしてるの?
2022/11/28(月) 20:03:31.87ID:Wp/I5FPo
実行時エラーが起きないことが保証されると書かれている公式サイトのURLを下さい
文脈も合わせて読まなければ判断できないので
日本語で引用しているということは誤訳の可能性もあるし
2022/11/28(月) 20:04:25.28ID:ptllJlnS
>>671
>古来、バグはいくらでも入る。
Rustでもバグfixが追いつかない実例->lapce
code editorは数人(+ごく稀なcontributor)で対応するには余りにも複雑なプログラムだと思う。
2022/11/28(月) 20:07:06.18ID:TT/P6KwG
他の言語ってインターフェースを関数から返せるっけ?
Rustはトレイト返せるけど
2022/11/28(月) 20:09:20.88ID:ptllJlnS
https://github.com/lapce/lapce/issues

他スレで上がってたのを思い出して見てみたら放置されてた
https://github.com/lapce/lapce/issues/1668
2022/11/28(月) 21:13:58.78ID:2w53O7+w
>>674
文脈あって範囲を限定すると今度は証明が~となるので、そうなると正直判断できない。
結局大雑把な文脈での話しか出来ない自分です。
679デフォルトの名無しさん
垢版 |
2022/11/28(月) 21:38:31.45ID:LooEy8MN
>>676
返せるでしょ
むしろRustはなんで直接trait返せないんだ?ってなるのが普通
680デフォルトの名無しさん
垢版 |
2022/11/29(火) 00:09:28.41ID:zwTDTYOm
これ一番速いのはいいんだけどなんでバイナリサイズGoの倍もあるんだ?そこが不服だわ
https://ecostack.dev/posts/wasm-tinygo-vs-rust-vs-assemblyscript/
2022/11/29(火) 00:28:33.22ID:fvnZTYNV
>>680
GoじゃなくてTinyGoだから別コンパイラじゃないのか?
しらんけど
2022/11/29(火) 00:29:24.71ID:bjuqnrsq
確かに。GC無いから転送サイズ小さくなる、と言う触れ込みは再考の必要があるのか。
https://i.imgur.com/nCVoHXW.png
683デフォルトの名無しさん
垢版 |
2022/11/29(火) 00:40:07.72ID:zwTDTYOm
なんかこうやって纏められるとAssemblyScriptがわりと高いレベルでバイナリサイズ・実行速度・メモリフットプリントのバランス取れてていい感じがするな
wasmターゲット専用言語だからセットアップ単純だし
Rustはwasmターゲットだと若干セットアップ手間だけど速度は文句無しだからバイナリサイズだけせめてGoよりは小さくなってくれ
てかGo(TinyGo)よりサイズが必要な道理はないよな?
まさかデバッグビルドか何かかしら?
2022/11/29(火) 00:51:42.61ID:GvyrOa7B
randじゃね?
Math.randomで揃えたほうが意味のある比較が得られるかも
2022/11/29(火) 01:20:35.39ID:zkGFWomx
これが最新情報かどうかわからないけど、wasm-bindgenに対応していないかも
https://blog.logrocket.com/comparing-random-number-generators-rust/
>Note: Unlike JavaScript, there is no Math.random method equivalent currently available in Rust.

randの方は、これで行けた
[dependencies]
wasm-bindgen = "0.2.63"
rand = {version = "0.7", features = ["wasm-bindgen"] }

デバッグビルドの心配はなさそう
https://i.imgur.com/Y1Cut3b.png
686デフォルトの名無しさん
垢版 |
2022/11/29(火) 07:42:30.08ID:SJ6gC8Ff
>>680
https://zenn.dev/dozo/articles/14b76b561f3b45
2022/11/29(火) 10:50:30.64ID:kK2YPnkZ
>>686のリンクには
>WebAssemblyを使う上で、最早定番となっているwasm-pack, wasm-bindgenだが、これらを使うことでサイズが小さくなる。
と書いてあって、>>680の手法と同じ

今は
サイズ我慢で速度重視→Rust
トータルバランス重視→AssemblyScript

AssemblyScriptでループアンロール→最強の可能性
2022/11/29(火) 18:52:25.76ID:K9a8IO+l
文脈を限定すると答えられる5ch意識調査

RustはGC無いから○○では○○が有利/不利。自由に○○を埋めてください
2022/11/29(火) 18:55:24.50ID:t+w4gnFQ
次スレはワッチョイ付けとくか
2022/11/29(火) 19:25:03.39ID:KYdU3S5N
>>689
次スレ待たなくていいからワッチョイスレ建ててよ
2022/11/29(火) 19:54:15.57ID:VRBW4+C+
プログラミング言語 Rust 4【ワッチョイ】
https://mevius.5ch.net/test/read.cgi/tech/1514107621/

あるやん
2022/11/29(火) 20:07:43.93ID:oIl8dOKJ
>>691
表面的にはひどい荒らしスレに見えますが、ワッチョイなしスレに誘導したい思惑でしょうか
2022/11/29(火) 20:14:44.32ID:VRBW4+C+
スレタイしかみてないから知らんがな (´・ω・`)

> ワッチョイなしスレに誘導したい思惑
ここがそうなんだけど、どういうこと???
2022/11/29(火) 20:25:34.24ID:XdsjIrxf
次回からこう聞くように

限定された文脈なのに誰もYesかNoか答えない(含む自分)5chアンケート調査

RustはGC無いからwasmでは転送サイズ小さくなる可能性がほぼほば100%
2022/11/29(火) 20:44:54.77ID:CCXgN4qQ
>>694
何と比べてるのか限定されていません。

RustはGC無いからwasmでは、GC付き言語のGoと比べて転送サイズ小さくなる可能性がほぼほば100%

これだと大嘘です。GCマウント禁止
2022/11/29(火) 23:14:29.40ID:JTTSm0Nf
ワッチョイでスレが健全化された例ってあるん?
2022/11/30(水) 01:36:38.11ID:CGVOYd9m
新規ワッチョイスレを他言語比較マウント禁止のスレとして立ててくれませんか?

複オジがマウントするから荒れるわけなので、こちらは隔離スレ
こちらの隔離スレではたぶん複オジが嘘つきマウントし放題だけど、心ある人が都度、嘘認定をする流れで
2022/11/30(水) 08:15:37.71ID:zxU0c19+
>>696
自分は知らないな。原理主義者の言論弾圧に使われるのがオチ
センシティブな話題も客観的に議論できるようになった例は見たことない
2022/11/30(水) 08:41:56.63ID:5hu//ubR
スレは健全化しないけど、NG指定が簡単になるからchリーダー使用者の恩恵は大きい。
2022/11/30(水) 08:50:23.49ID:JOQsrdYp
やる気のある荒らしにとってはワッチョイスレの方が自作自演やりやすい
701デフォルトの名無しさん
垢版 |
2022/11/30(水) 08:52:45.01ID:G7Z4SD5Z
>>690,697
自分で立てなよ
2022/11/30(水) 09:59:30.85ID:GLbLL33e
翻訳論議が一段落して、次はワッチョイ論議
つまりこのスレは話題があんまり無い
703デフォルトの名無しさん
垢版 |
2022/11/30(水) 10:15:08.01ID:oBo+tKG7
リンクトリストやグラフ構造が地獄という話題に戻ろう
2022/11/30(水) 11:14:03.81ID:i6HTre51
>>699
論理的な主張をする人が消えるからデメリットはかなりある

>>700
ほんそれ。ワッチョイ入れると情報リテラシーが低い奴の比率が増えて荒らしにとっても
議論を誘導しやすく都合が良い
ワッチョイ導入したスレはネガティブダメ絶対で盲目信者の巣窟と化した所ばかりだわ
2022/11/30(水) 11:39:08.76ID:zgBPYpzJ
>>704
C++相談室 part162
https://mevius.5ch.net/test/read.cgi/tech/1667194175/

を見る限り、論理的一貫性をもった主張の出来る人ほど、コテハンやワッチョイを長期間維持しているように見えます。

ワッチョイスレを否定したり、建てられても過疎化させようとしている人の側に複オジおよび複オジ軍団?がいると思います。
2022/11/30(水) 11:45:59.09ID:GLbLL33e
そのスレ、先週の木曜から丸1週間
連想配列とハッシュについて、用語の使い方でもめててカオスなんだが
2022/11/30(水) 12:04:15.09ID:/jkyAEdJ
だから、>>696,698,700,704がその、複オジおよび複オジ軍団?、の工作だと思われ
C++スレにも複オジ軍団が居て、事実を捻じ曲げておちょくってる

ワッチョイはブラウザ次第で結構似たものになるので、他の板で実験してから紛らわしいワッチョイになるようにして工作している

もっと効果の高い、地域表示があるワッチョイスレ、どうやって立てるのか教えてくれ
2022/11/30(水) 12:13:40.18ID:cmtce+MC
複オジ軍団はここしばらくは他スレを荒らして、このスレではバレバレな潜伏しているのはなぜ?
2022/11/30(水) 12:15:14.45ID:jPWRqkwi
自作自演できないとめっちゃ困るヤツがいるみたいだなw
710デフォルトの名無しさん
垢版 |
2022/11/30(水) 12:23:21.21ID:2gwAbMS9
>>703
じゃ、まずRustで書いた地獄のようなコードを公開しようか
2022/11/30(水) 12:23:29.98ID:OzkchGTR
地域表示があるワッチョイスレ、これでいい
2022/11/30(水) 12:39:01.46ID:pEwW8jKj
このスレ他の荒らされスレも自衛のために地域表示があるワッチョイスレを導入するべき
713デフォルトの名無しさん(茸)
垢版 |
2022/11/30(水) 12:39:21.42ID:IuI5QH4S
test
http://hobby23.net/archives/wacchoi-ng/
ID+W
!extend:checked:vvvvv:1000:512
ID+IP
!extend:checked:vvvv:1000:512
ID+W+IP
!extend:checked:vvvvvv:1000:512
2022/11/30(水) 12:52:42.68ID:AuqILHPE
ワッチョイを入れるともっともらしい事を書きつつ論理性のない奴ばかりになるんだよな
2022/11/30(水) 12:58:59.97ID:pEwW8jKj
でも地域コロコロは相当な手間だろうから効果的
716デフォルトの名無しさん
垢版 |
2022/11/30(水) 13:15:44.12ID:qQx/nUVl
いやいやw
ボタン一押しで変えられるからw
2022/11/30(水) 13:22:01.95ID:UkkEZSxh
>>716 複オジ軍団おつ
本当にそこまでしてると犯罪集団の疑いがかかるよ
大人しく納得してよ
718デフォルトの名無しさん
垢版 |
2022/11/30(水) 13:31:07.04ID:RA9ND8/X
>>705
まともなスレなのかと思ってみたら予想以上に酷かった
NGが捗るのだけは間違いない
719デフォルトの名無しさん
垢版 |
2022/11/30(水) 13:33:05.03ID:HgZFIyO3
>>717
おいおいw
複オジ軍団に入れるなよ
リテラシーの低さを指摘してやっただけだぞ

つか複オジに軍団がいるわけないじゃんw
2022/11/30(水) 14:33:18.63ID:bBS0BhSp
そう思ってよく見ると、これ軍団?なのかは知らないけど

C++相談室 part162
https://mevius.5ch.net/test/read.cgi/tech/1667194175/392-393

アウアウウー Sa5b-*
ちょくちょく話の腰を折るのが楽しくて仕方ない、ポエオジに見えてきた
2022/11/30(水) 15:11:10.30ID:WOTWHh4+
その人競プロスレにもいる
そのワッチョイだとよそ者扱いなの気づいてないかも
その仲間もいる
722デフォルトの名無しさん
垢版 |
2022/11/30(水) 15:45:12.01ID:pJupgOvS
アウアウウーはNGにしてるわ
同じやつかもしれんがロクなやついないので
2022/11/30(水) 16:09:27.62ID:luaLXMjy
>>707
妄想乙。陰謀論とかすぐに信じちゃいそうだから気をつけような
2022/11/30(水) 16:26:36.69ID:C5ItOzWN
C++スレ、だいたい見分け付くから安心して
725デフォルトの名無しさん
垢版 |
2022/11/30(水) 16:45:35.81ID:Wzirhnl9
そこに某オジが混ざってるのは確か
2022/11/30(水) 19:27:06.50ID:FAHQHXzj
ワッチョイ導入を吠える奴に限ってワッチョイコロコロだよな
2022/11/30(水) 19:33:03.35ID:VjUnhy87
オイコラミネオの方が特徴を出している
2022/11/30(水) 19:47:27.00ID:wYxb0V08
競プロスレではオイコラミネオがマウントしてアウアウウーがたしなめてる?
2022/11/30(水) 20:19:35.44ID:30W6u2RH
オイコラミネオはかのMAUIと意気投合してる

WPF(.NET, WinUI) GUIプログラミング Part30
https://mevius.5ch.net/test/read.cgi/tech/1667010874/279
279: デフォルトの名無しさん sage 2022/11/26(土) 11:06:15.13 ID:1ldKsJnP

これの少し上(265以降)からx:Nameの話のやり取り。質問者は別人で知ったかしてるのがオイコラミネオ

ID:1ldKsJnP == ID:1ldKsJnPM (オイコラミネオ MMab-ykd8)
http://hissi.org/read.php/tech/20221126/MWxkS3NKblBN.html
2022/11/30(水) 20:25:16.86ID:dptuEtJz
オイコラミネオ語録
天才
漏れ
のであった
のであっる
2022/11/30(水) 20:50:59.01ID:D0f5nOYN
語録 意味論+のであった コンボ

次世代言語29 TypeScript Swift Go Kotlin Rust Nim
https://mevius.5ch.net/test/read.cgi/tech/1663409149/352
352: デフォルトの名無しさん sage 2022/09/22(木) 06:32:39.62 ID:KYC2ssXj
>>343
意味論(semantics)はコンピューターサイエンスでは常識かつ必須のものであり
今回のような証明においてももちろん不可欠のもの
そして>>319の論文を見てみたら当然のように今回の核心部分で意味論(semantics)が出てきている
皆が言及しているのも当然なのであった
2022/11/30(水) 20:56:14.68ID:xA9q89X1
こういう単発ガイジの対策になるわけですよ
2022/11/30(水) 20:58:56.08ID:3owZWjDR
Doc本家代弁者の思い込み? 本スレ ID:rSYd8nrB

>>492: デフォルトの名無しさん sage 2022/11/24(木) 15:33:59.04 ID:rSYd8nrB
一方rustコミュニティはコンパイラのdiagnosticの翻訳者を募集していたのであった
https://blog.rust-lang.org/inside-rust/2022/08/16/diagnostic-effort.html

>>484はこういうのもやらない方が良いと思ってる?
734デフォルトの名無しさん
垢版 |
2022/11/30(水) 23:53:41.68ID:BfCpCYnc
これは他の開発環境でもよくあることだけど、こんなの訳されたらググりづらくなるだけじゃねえのか
2022/12/01(木) 00:17:38.55ID:8yYXZOAf
rustcの場合はURLやエラーコード出るからメッセージが日本語でも特に支障はないのでは
■ このスレッドは過去ログ倉庫に格納されています