Rust Part7

■ このスレッドは過去ログ倉庫に格納されています
2019/07/14(日) 23:31:47.54ID:PySyhRf9
Mozilla発のRust言語のスレ

公式
https://www.rust-lang.org/
https://blog.rust-lang.org/
https://github.com/rust-lang/rust

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

前スレ
Rust Part6
http://mevius.5ch.net/test/read.cgi/tech/1532714678/
552デフォルトの名無しさん
垢版 |
2019/10/26(土) 19:08:07.88ID:2tVQRscY
この板で否定的な言い分を魔に受けないほうがいい
冗談で言ってるか、冗談みたいな馬鹿の言い分だから
553デフォルトの名無しさん
垢版 |
2019/10/26(土) 23:02:43.13ID:JvDQOGiO
おっぱい好きだけど爆乳は好きじゃない。
2019/10/26(土) 23:16:28.89ID:yM1vAjNy
奇乳きらい
2019/10/27(日) 15:39:15.22ID:QYdsXE4U
貧乳こそ正義
556デフォルトの名無しさん
垢版 |
2019/10/27(日) 20:10:25.95ID:M2w7+A6p
π
2019/10/27(日) 21:47:29.52ID:29EcE5aV
雄π
2019/10/28(月) 07:30:15.50ID:JN5lVu+u
ちっぱいだいすき
2019/10/28(月) 11:04:07.07ID:24j/k5v2
たかが乳ですら意見割れてるのに関数型の話がまとまるわけないな
2019/10/29(火) 22:37:06.24ID:mgVguoQK
うまいことドメイン駆動設計をオブジェクト指向から切り離せないかな?
Javaでアーキテクチャを考えると、「このコードはどこに書くべきか」がずっと分からなくなる
関数のシグネチャ読めばそれがMなのかCなのか業務ロジックなのか入出力なのか、全部分かるように書けないものか
2019/10/29(火) 23:45:32.33ID:2LlnWJID
スレチ? それどもRustで考えてるのかな
JavaでもC#でもシグニチャ読めばMなのかCなのかくらいはわかるように書けると思うが

それはいいとしてDDDの本質はOOとは関係ないよ
Functional DDDの本がScalaとF#を例にしたのがそれぞれ出てるから読んでみるといいかも
F#のほうの著者のサイトみればRustのEnumでも同じような事できるのがわかるはず
https://fsharpforfunandprofit.com/ddd/
2019/10/30(水) 00:09:30.97ID:FUp1HJ0i
はえ〜
563デフォルトの名無しさん
垢版 |
2019/11/01(金) 14:20:55.93ID:uczmPzhO
Vulkanが公式でRustをサポートしてくれればRust製のゲームとかもっと出てくるのかなぁ
2019/11/01(金) 15:16:52.33ID:tfmUKGIE
enumの配列はメモリやばい?
https://play.rust-lang.org/?version=stable&;mode=debug&edition=2018&gist=0eeab60af9f7385db00275b2d168ac2c
2019/11/01(金) 15:49:15.26ID:zrbJp7o3
>>564
enum MyEnum {
Foo,
Bar(i32),
Baz(i32, i32, i32, i32, i32),
}

今のRustはEnumの一番大きいvariantに合わせてメモリを確保する
Baz(i32, i32, i32, i32, i32)が、4バイト x 5 = 20バイト
どのvariantかを示すTagバイトで+1バイトと パディングで+3バイト=24バイト
配列の要素数が3なら24 x 3 = 72バイト
2019/11/01(金) 19:25:13.98ID:+nuKsb5/
現職エントリ()のドワンゴや
タイ全裸Wantedlyの推してる言語って時点で使う気起きなくなるよね
567デフォルトの名無しさん
垢版 |
2019/11/01(金) 19:29:17.10ID:CgKHPMXI
タイ全裸って?
2019/11/01(金) 21:28:00.41ID:/XSkjXU3
>>567
タイ全裸Wantedlyでググろう
Wantedlyがタイで全裸になったわけではないが
企業としては全く信用できん
2019/11/01(金) 21:55:41.28ID:/XSkjXU3
どんなに「こんなに素晴らしい機能がある言語!」とか言われても
「でもあの個人情報お漏らし泥箱や現職エントリ()ドワンゴとかDMCA乱用のWantedlyとかが推してる時点で……」ってなるのが
正しい社会人としてのあり方
2019/11/01(金) 22:09:13.26ID:tfmUKGIE
>>565
つまりどんなenum作るでもたくさん値を持たせないほうが余計なメモリ使わずベストってことか
571デフォルトの名無しさん
垢版 |
2019/11/01(金) 22:57:41.39ID:RJfnLfVj
アンチドワンゴがみんなC言語使ってると思うと抜ける
572デフォルトの名無しさん
垢版 |
2019/11/01(金) 22:57:51.68ID:RJfnLfVj
↑思うとワロタ
2019/11/02(土) 02:27:34.58ID:lY37zOLC
まあ正直、いまだにえんじにゃーのファッションって部分がでかいわな。
574デフォルトの名無しさん
垢版 |
2019/11/02(土) 07:38:49.45ID:m1PoQplx
他人がなに使ってのかチラチラ伺いながら自分の使うもの決めるのか
小物すぎるだろ
2019/11/02(土) 13:57:08.64ID:uxGQ1L3w
>>574
つっても現職エントリ様やタイ全裸と一緒にされたくはねえしなあ
576デフォルトの名無しさん
垢版 |
2019/11/02(土) 14:20:09.97ID:m1PoQplx
同じ言語使ってるだけで同一視すんのはお前だけだよ
2019/11/02(土) 14:32:51.71ID:ygDc/lgM
それらの企業はRustなんか採用する前からボロボロだっただろ。
2019/11/02(土) 15:40:16.76ID:lY37zOLC
んでもって一発逆転をねらって水物のに飛びつくっていうアンチパターンね。
2019/11/02(土) 20:44:05.92ID:J/DFBFnF
あそこは一人が有名なだけだと思うがな
2019/11/02(土) 22:56:34.85ID:VM95VN5u
https://github.com/woboq/qmetaobject-rs
このcrateの中で"rust!"というマクロが使われてるんですがクレート内や依存するクレートの中を探してみても定義してる箇所が見つかりません
どこで定義してるのかわかる方いませんか?
2019/11/02(土) 23:31:33.69ID:t8MMHk4t
>>580
Rustのマクロとして定義されてるものではないみたいね
↓ここら辺に説明がある
https://docs.rs/cpp/0.5.4/src/cpp/lib.rs.html#209-241
2019/11/02(土) 23:48:47.52ID:VM95VN5u
>>581
なるほど、マクロの中で独自の擬似的なマクロを定義してるって事でしたか
そんな使い方があるなんて思いもしなかった

ありがとうございました!
583デフォルトの名無しさん
垢版 |
2019/11/03(日) 01:36:39.62ID:G+Mc14wF
マクロの中で独自マクロ定義とか、、、
そんなことされたら俺の脳はメタメタにされてしまう。
2019/11/03(日) 02:21:28.16ID:EBkVjL7h
C++テンプレートの悪夢を再現しようとしてる人たち
585デフォルトの名無しさん
垢版 |
2019/11/03(日) 14:24:34.21ID:smmSGOst
C++を理解したプログラマーはRustを使う必要がなく、C++が理解できないプログラマ―にはRustも同様に理解できない。
https://developers.srad.jp/story/15/02/20/2132207/
586デフォルトの名無しさん
垢版 |
2019/11/03(日) 17:45:13.54ID:jtCsbY8B
>>585
古い記事のリンクなんてはるな、うざい
2019/11/03(日) 20:33:09.59ID:r9lfrX/A
traitでコピーかムーブかの判断をするようにしたのはrustの最大の失敗だな。
2019/11/03(日) 22:07:42.86ID:1Y+jqSBq
直すならいまのうち

大丈夫だろ
2019/11/03(日) 23:21:37.95ID:M7pbBVsi
どうだったらよかったのか
2019/11/04(月) 02:00:10.34ID:emAGOeO/
>>586
5年前から何一つRustは進歩してないってことだよ
一方Nimは1.0迎えてどんどん進歩している
RustからNimへの流出もどんどん進んでる
2019/11/04(月) 02:02:58.89ID:emAGOeO/
http://wolfbash.hateblo.jp/entry/2017/07/30/193412
そーいや結局この記事へのまともな反論は以前のスレでも出てこなかったよな
592デフォルトの名無しさん
垢版 |
2019/11/04(月) 02:16:17.42ID:O4QbPTeM
ネタフリはいいけどもうちょっと生産的なのにしてよ
2019/11/04(月) 02:22:13.55ID:q2ozowgo
>>589
少なくとも = をオーバーロードもしくはオーバーライドするようなやり方は
すべきでなかった。
2019/11/04(月) 07:58:19.81ID:hfizXHxK
生産的というが、Rustが言語として生産的なことは過去にあったか?
それよりはNimへの乗り換えという前向きな選択肢を出すことの方が生産的だと思うが
2019/11/04(月) 09:12:04.34ID:b9TWlX4+
AWSも支援--プログラミング言語「Rust」人気が拡大
https://japan.zdnet.com/article/35144661/
2019/11/04(月) 09:16:30.74ID:TNJ/Yj6e
>>593
そうでないならどうする?
pros/consは何?
2019/11/04(月) 10:29:24.02ID:pD4BmXAp
個人的にはC/Zig/C2・C++/D/Rust・Go/Nimという棲み分けだと思っているので別にという感じだ

まぁそもそも論としてNimの話したいなら次世代言語スレかNimスレでやれよという気持ち
せっかく専用スレあるのにメインユーザーにすら使われないとか可哀想すぎるでしょう?
2019/11/04(月) 11:26:47.69ID:TQlb0Fo2
NimはPythonでパフォーマンスに困ってる人にはいい言語じゃないかと思う。Pythonスレで宣伝してくればいいのに。
Rust使ってる人が移行したくなる要素はあまりない気がするけどな。
2019/11/04(月) 12:05:28.47ID:q2ozowgo
>>596
んな簡単に示せたらおれが言語作ってるわ。
とりあえず言えることとしてはこの辺の明示性に関しては明らかに c に劣るってことくらい。
2019/11/04(月) 12:16:27.30ID:TNJ/Yj6e
「すべきでなかった〜」とか断言したわりにしょぼい回答でがっかりだよ
2019/11/04(月) 12:41:59.38ID:x85TCC2R
Rustの良さはCと同レベルの速さをキープしつつ
Cよりは安全にかけるところが良いのだから
言語についてごちゃごちゃ言うのは筋違い
多少面倒でも安全に倒した方が良いって人が使うもの
2019/11/04(月) 12:43:51.83ID:f7Qy6XgK
インデックス1始まりの地獄はVBAでさんざん味わった
一貫してるとまた違うのか?
2019/11/04(月) 14:56:29.79ID:YPBZbHG1
RustはCより身持ちが堅いけどお作法と親戚づきあいが滅茶苦茶面倒な嫁って感じ
NimとPythonは巨乳姉妹で姉は大学生、妹はフリーター
Perlはヤンデレ妹
2019/11/04(月) 17:01:43.91ID:R+mKKMUr
まあ確かにC++のauto_ptrと同じミスをしてるとは言えるよねCopyトレイトに関しては
こっちはCopyトレイトになれるものが相当限られてるのと
コンパイラがC++よりわかりやすいエラーを吐くことでギリギリ妥協の範囲を攻めてる感じ?
まあ全体的にはauto_ptrよりはマシだと思うよ
許容できるかは人次第だけど
2019/11/04(月) 18:52:40.96ID:q2ozowgo
>>601
いや全く逆のことを指摘してるんだが。
もっと面倒でもコピーと参照については明示性のある記述方法にするべきだったのでは
ということを言っている。
2019/11/05(火) 01:02:39.53ID:AzzdNH9H
>>605
横レスだけど >>601 はRustとNimについての文脈であってCopyトレイトについての文脈じゃないと思うよ
2019/11/05(火) 19:53:18.47ID:FsOBPMBu
自転車置き場の屋根の色は何色にするべきか?と同レベルの議題にしか見えない
せめてどんなコードを読んでor書いてそう思ったのかを言えよ。主観の元になった客観をよ
608デフォルトの名無しさん
垢版 |
2019/11/06(水) 11:16:50.77ID:o3tEvZiY
アワビやウニを獲りに行くのに
アクアラング使うか素潜りかの違いでしかない
609デフォルトの名無しさん
垢版 |
2019/11/06(水) 13:06:01.28ID:mtXJ9XYX
それはアクアラングのほうがいいだろ…
2019/11/06(水) 16:41:33.93ID:35bri3id
機材背負ってアワビ捕る海女がいるかよw
611デフォルトの名無しさん
垢版 |
2019/11/06(水) 16:46:31.15ID:yiWzW/nI
それなら「アクアラングより素潜りのほうがよい」ということになるが…
自転車置き場の例えはそういうことじゃないが。
2019/11/06(水) 19:54:52.61ID:NaAqW+TO
たとえが下手すぎてわかんねーよ
613デフォルトの名無しさん
垢版 |
2019/11/06(水) 21:23:00.27ID:i85ttsqs
潜水服が一番良い
2019/11/07(木) 13:42:50.63ID:4E24WBqM
Rustやってるとこんなに知能下がるのかこわ
615デフォルトの名無しさん
垢版 |
2019/11/07(木) 16:06:15.56ID:wJeAdMrJ
Rの発音が難しい
616デフォルトの名無しさん
垢版 |
2019/11/08(金) 11:30:10.82ID:3E1/z7K0
ネーミングは失敗してるよな
2019/11/08(金) 15:18:16.25ID:6uXznXC5
async来たけど、普通のプログラムには必要ないよね?
2019/11/08(金) 18:04:49.98ID:IDNGhAox
普通って何だ
2019/11/08(金) 18:37:06.96ID:FQ4gd7yJ
平均以上の学歴で
平均以上の収入で
平均以上のルックスの人が書いた、
平均以上に速く
平均以上に小さく
平均以上に美しいプログラムのことだろ
620デフォルトの名無しさん
垢版 |
2019/11/08(金) 18:43:36.10ID:J02ga/Ws
平均と同じではいかんのか?
2019/11/09(土) 03:17:35.20ID:gvjWq9Ft
お前らってRust使って何作ってんの?それともただの言語マニア?
622デフォルトの名無しさん
垢版 |
2019/11/09(土) 06:26:46.96ID:jVCSonN8
ウェブアプリケーション
今五個目
2019/11/09(土) 06:36:27.73ID:wLC8XRoz
>>621
もちろんwebブラウザ
2019/11/09(土) 06:55:04.49ID:lNA75F4e
PoCでwasmに使ってるわ
2019/11/09(土) 10:19:17.47ID:PlRJlzfP
jsで15分でできるようなものを3時間かけて作るバカ
2019/11/09(土) 11:12:14.52ID:3G853X2x
メモリの安全のためには仕方がないんだよ
2019/11/09(土) 14:11:20.38ID:d07pJzzX
早くできてもわりとしょうがない
2019/11/09(土) 17:19:37.60ID:hkI1EgUJ
>>625
三時間ならマシ
コンパイラと格闘して一日つぶれるとかザラ
2019/11/09(土) 18:17:21.85ID:AHKmnAtf
ターミナルで動くテキストエディタとCコンパイラ
2019/11/10(日) 15:18:40.14ID:47iDVxCF
開発サイクルが遅くなってデメリットが上回る
仕事で使うアホはいないと思う
2019/11/10(日) 16:00:19.02ID:6dzdFLZi
現実には使ってる企業・製品が続々と出てくるわけで
2019/11/10(日) 17:54:33.79ID:agcAAuVW
どちらかというとアホは仕事で使えない
633デフォルトの名無しさん
垢版 |
2019/11/10(日) 22:43:25.53ID:KB1QaEbz
wasmて
ウェブブラウザアプリでRust的な安全性ガッツリ必要なことあるの?
2019/11/11(月) 19:57:31.41ID:EVqu4APJ
てかメモリ安全なスクリプト言語さえまともに使えないやつに限ってrustとか騒いでんだよね。。
バカバカしい。。
635デフォルトの名無しさん
垢版 |
2019/11/11(月) 20:07:59.59ID:khjQBy11
コンパイラより自分の腕を信じるって…
やっぱりジャップにはかなわねえや
636デフォルトの名無しさん
垢版 |
2019/11/11(月) 20:20:19.17ID:GWl6h/g/
てか で始める
限って によるガバガバなレッテル貼り

クソバカ
2019/11/11(月) 20:48:06.84ID:dcucGLEU
Cなら3で済みことを馬鹿に合わせてRustで20かけて作ることの意味があるのかどうかが問題だ
638デフォルトの名無しさん
垢版 |
2019/11/11(月) 21:23:31.49ID:vNU4oQAO
3で済みこと
2019/11/11(月) 21:42:08.98ID:dcucGLEU
あれw
2019/11/11(月) 22:00:50.85ID:yLtQAUtP
いきなりコント始めんなや
641デフォルトの名無しさん
垢版 |
2019/11/11(月) 22:28:55.57ID:GWl6h/g/
イニシャルコストだけ論じても意味ないしょ
作って終わりの製品もあるのは確かだだけど
642デフォルトの名無しさん
垢版 |
2019/11/11(月) 22:30:05.95ID:199KzUbd
>>633
ない
2019/11/11(月) 23:21:00.62ID:/mnflr/W
>>641
ランニングコストも同じだよ
何をするにもコンパイラの機嫌伺いから入る必要があるんだから
2019/11/12(火) 01:23:13.19ID:xaPlPvgO
そんなこと言うなよ
コンパイラちゃんはどこが悪いかいつも教えてくれてるんだぞ
コンパイラちゃんの気持ちも考えろよ
645デフォルトの名無しさん
垢版 |
2019/11/12(火) 01:50:34.68ID:UmQHVT6w
Item1とItem2で同じ構造しててそれぞれに似たような処理をしているのにItem2にだけCloneつけろとエラー出るんですが
理由がわかりません

エラーが出るコード
https://play.rust-lang.org/?version=stable&;mode=debug&edition=2018&gist=39e9b4899374d1aca90c64836d71c161

Item2にだけCloneつけて動くコード
https://play.rust-lang.org/?version=stable&;mode=debug&edition=2018&gist=568c3f827c59a417f8d1c0f91b6bc9e4
2019/11/12(火) 03:38:31.37ID:+Tj6wPob
>>645
vec!マクロで要素数指定する形はその型がClone実装してないとだめ

Item1も要素数指定すればCloneを要求される
let mut vs = vec![Item1 {a: 0, b: 0};10];
2019/11/12(火) 05:17:14.07ID:UmQHVT6w
>>646
説明ありがとうございます
理解しました!
648デフォルトの名無しさん
垢版 |
2019/11/12(火) 07:41:14.54ID:QX/VSHUG
>>643
そんな短絡的なことを言っているんじゃないよ
2019/11/12(火) 12:52:39.30ID:75A3JV4a
コンパイラがやかましければプログラムの質が上がるっていう
短絡的なこと言ってるのはどっちだか
650デフォルトの名無しさん
垢版 |
2019/11/12(火) 12:56:25.17ID:p8WdjJyB
安全な言語を開発するようメーカーの方に心がけていただき、
kidsが安心してプログラムできるような、コンパイルできるような世の中になってほしい。
2019/11/12(火) 14:55:56.85ID:QDjqh8Or
「Rust言語」をWindowsプロジェクトに適用してみた、Microsoftの事例
https://www.atmarkit.co.jp/ait/articles/1911/12/news050.html

欲しい機能がまだまだある、Rustコミュニティーとも協調

Rustは比較的歴史が浅いため、Microsoft社内の開発に使うことを考えると、よく使う言語機能であっても欠けているものがあるという。
その最たるものは、安全な変換(“プレーンな古いデータ”型をrawバイトと間で相互に安全にキャストする)やCスタイルの共用体の安全なサポート、誤りを許容する割り当て(割り当ての失敗でパニックに陥らず、所定の手順で停止する)だ。

Cargoには優れた単体テスト機能が組み込まれているため、開発者が本番コードと同じファイルにユニットテストを記述して、開発中に簡単に実行することができる。だが、Microsoft社内の大規模で複雑なビルドシステムでは、Cargoをビルドツールとして利用できない。
そこでCargoチームとの間で、複雑なビルドシステムを持つ大企業がCargoを利用できるようにするための話し合いを開始している。
2019/11/12(火) 15:08:35.31ID:YVK5A4co
「誤りを許容する割り当て」ってなんだ?
malloc失敗した時になんか処理したいって話?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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