X



Rust part18

レス数が1000を超えています。これ以上書き込みはできません。
2022/12/10(土) 18:17:02.61ID:XSNoXTPt
公式
https://www.rust-lang.org/
https://blog.rust-lang.org/
https://github.com/rust-lang/rust

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 part17
https://mevius.5ch.net/test/read.cgi/tech/1665063793/
2022/12/10(土) 18:22:52.22ID:XSNoXTPt
Rust Reference
https://doc.rust-lang.org/reference/
Rust Standard Library
https://doc.rust-lang.org/std/
Rust Cargo Book
https://doc.rust-lang.org/cargo/
Rust rustup Book
https://rust-lang.github.io/rustup/
Rust API Guidelines
https://rust-lang.github.io/api-guidelines/
Rust unstable Book
https://doc.rust-lang.org/nightly/unstable-book/
Rust rustc Book
https://doc.rust-lang.org/rustc/
Rust rustdoc Book
https://doc.rust-lang.org/rustdoc/
The Embedded Rust Book
https://docs.rust-embedded.org/book/

Rust async-std Book
https://book.async.rs/
Rust tokio Book
https://tokio.rs/tokio/tutorial
Rust CLI (Command Line Interface) apps Book
https://rust-cli.github.io/book/
Rust macro Book
https://danielkeep.github.io/tlborm/book/
Rust Future Book
https://cfsamson.github.io/books-futures-explained/
3デフォルトの名無しさん
垢版 |
2022/12/10(土) 18:28:50.59ID:5kj3RxeP
>>2
テンプレにたくさんリンク貼るよりもLearn Rustへのリンク一つ貼るだけの方がいいんじゃないかと思う
https://www.rust-lang.org/learn
4デフォルトの名無しさん
垢版 |
2022/12/10(土) 18:36:18.76ID:tOD68jSP
>>1

公式じゃないけどこういうのもある
The Little Book of Rust Books
https://lborb.github.io/book/
5デフォルトの名無しさん
垢版 |
2022/12/11(日) 15:34:18.42ID:wn9VSzf5
前スレにあった静的チェック付きのStateパターンみたいな考え方はTypestateパターンとかTypestateプログラミングと呼ばれてるらしい
http://cliffle.com/blog/rust-typestate/
https://docs.rust-embedded.org/book/static-guarantees/typestate-programming.html
https://www.reddit.com/r/rust/comments/xmc91c/
6デフォルトの名無しさん
垢版 |
2022/12/11(日) 21:49:09.89ID:htgTzR7N
tokei -t='Assembly,GNU Style Assembly,Java,Kotlin,JavaScript,TypeScript,Python,Rust,Go,C,C Header,C++,C++ Header' -e external -e prebuilts
===============================================================================
Language Files Lines Code Comments Blanks
===============================================================================
Assembly 11 1835634 1776276 61 59297
GNU Style Assembly 505 702218 669778 20314 12126
C 2260 862132 656263 119096 86773
C Header 20761 4587467 3072817 1053823 460827
C++ 19077 9875194 7969332 904154 1001708
C++ Header 312 227421 184914 13293 29214
Go 960 347839 262712 44117 41010
Java 62585 16324831 10773417 3527799 2023615
JavaScript 132 70006 56347 8309 5350
Kotlin 3162 525334 372328 94668 58338
Python 3924 1024375 820227 86674 117474
TypeScript 58 393127 299455 93064 608
-------------------------------------------------------------------------------
Rust 416 100326 82483 7631 10212
|- Markdown 308 6885 13 6323 549
(Total) 107211 82496 13954 10761
===============================================================================
Total 114163 36875904 26996349 5973003 3906552
===============================================================================
7デフォルトの名無しさん
垢版 |
2022/12/11(日) 21:50:08.75ID:htgTzR7N
前スレのAndroid Rustコード量水増しの話だけど、興味が出たので自分で見てみたわ
条件がC++と一緒なら良い、記事書いた本人に言え、はマ的に完全なる詭弁だわ
boostみたら一緒ですらないし、不適切に一票

Rustは10万行という数字が適切

そもそも詭弁擁護する勢力がいることにドン引き、マじゃないの?自分で見て見ろ
これ、Rust関連数字の信用にも響くから、盲目信者はしゃしゃり出るなよ
2022/12/11(日) 21:58:19.24ID:Wk+Dst9S
>>7
external含むとどうなるの?
Android13での新規コードの割合はいくつなの?
9デフォルトの名無しさん
垢版 |
2022/12/11(日) 22:21:51.80ID:VGzTS+SX
>>6-7
勝手ながらソートして整えた
https://i.imgur.com/bF7XrxK.png

>>8
横からですが条件が一緒にならないと言っているのでは
10デフォルトの名無しさん
垢版 |
2022/12/11(日) 22:34:34.35ID:VGzTS+SX
ヘッダのアライメントを直した
https://i.imgur.com/dt3SoBi.png
11デフォルトの名無しさん
垢版 |
2022/12/11(日) 22:52:02.78ID:+jnqsCh5
暇人だけができる無駄な時間の使い方
12デフォルトの名無しさん
垢版 |
2022/12/11(日) 22:57:39.49ID:xKbN44AS
知りたいんならどうやって数えたのか聞けばいいのに
13デフォルトの名無しさん
垢版 |
2022/12/11(日) 23:02:53.56ID:Qte75DOs
キモい独り言ツイートばっかりしてる某おじさんに聞いてもらうとかw
14デフォルトの名無しさん
垢版 |
2022/12/11(日) 23:14:51.28ID:FJTWr6s2
論理的に書かないから何が言いたいのか
何を問題視してるのかさっぱりわからない
15デフォルトの名無しさん
垢版 |
2022/12/11(日) 23:18:58.68ID:KdHA47WQ
>>14 = 1.5m --> 0.1mでしたが何か?
詭弁w
2022/12/11(日) 23:21:33.18ID:Wk+Dst9S
>>9
元記事ではレポジトリには150万行あるとしか言ってないので、
external含めて数えないと事実確認にならないのでは

もう一個の21%というのはAndroid13で追加されたネイティブコードのうちの割合の話なので、>>6の情報からは分からない

比較の条件という意味ではboost云々が何を言いたいのかがよくわからなかったから無視してしまったけど、そこが重要だった?
boost使ってるけどandroidのソースツリーに含まれていなかったということ?
17デフォルトの名無しさん
垢版 |
2022/12/11(日) 23:23:28.92ID:0MAFRru0
オープンソースの依存ライブラリ含めても0.1Mしかなかったぞという主張なのかな?
だとすれば数え方が違うんだろうね
18デフォルトの名無しさん
垢版 |
2022/12/11(日) 23:24:19.45ID:pBSvZedx
>>16
盲目信者必死アクロバティック擁護
もう終わりだよこのスレ
19デフォルトの名無しさん
垢版 |
2022/12/11(日) 23:25:19.82ID:0MAFRru0
最初から1.5Mはオープンソースの依存ライブラリ含めた数字だとはっきり書いてる
2022/12/11(日) 23:27:47.08ID:gx+o5vLL
>>18
元記事では21%の方を強調してて150万行はさらっと書いてあっただけだよ
なんか事実に反してること言ってるかな
21デフォルトの名無しさん
垢版 |
2022/12/11(日) 23:30:29.30ID:cgYR6v9B
repo拾いに行ったの何人かいたようだが、ほとんどが絶句ダンマリ
これが現実

口数が多いのは盲目信者か、ポジショントークか

明日のLinux6.1の記事に差し障るのかな?
22デフォルトの名無しさん
垢版 |
2022/12/11(日) 23:32:21.49ID:cgYR6v9B
数字の根拠は自分で確認した方が良いぞ
23デフォルトの名無しさん
垢版 |
2022/12/11(日) 23:45:07.33ID:d4r/V55+
なんだ外部ライブラリはカウントしてないのか
それじゃダメだわな🙅‍♂
24デフォルトの名無しさん
垢版 |
2022/12/12(月) 00:31:18.54ID:F79YIKXY
しかしまあ、こんなスレで必死に1.5Mを正当化(適切だという含み)しようとしている連中って、
次世代スレでRustの安全性は証明付き保証だと連呼していた奴らだよね

>口数が多いのは盲目信者か、ポジショントークか
ポジショントーク路線でのプロファイルは面白そう
25デフォルトの名無しさん
垢版 |
2022/12/12(月) 00:32:53.39ID:F79YIKXY
あるいは、答え合わせ、が近づきつつあるのか?
2022/12/12(月) 00:43:48.98ID:DwAiDr7u
そんなにRustが嫌いなら使わなければいいのに
27デフォルトの名無しさん
垢版 |
2022/12/12(月) 00:49:36.11ID:gFGRqSRq
>>26 今晩の監視当番なのかな?

適切かどうか意見を訊かせてよ
2022/12/12(月) 00:57:48.85ID:TQPiS+Fx
>>27
適切でしょ?
元記事で含むと明言されているものを除外するようか計測方法をして数字が合わないインチキだと言ってる方が意味不明
29デフォルトの名無しさん
垢版 |
2022/12/12(月) 01:01:39.83ID:gFGRqSRq
適切、元記事で含むと明言されている、って冗談か挑発か?
2022/12/12(月) 01:02:26.10ID:BZoLN2AH
自分への反論は当番制で組織的に書かれているという世界観なんだろうか
31デフォルトの名無しさん
垢版 |
2022/12/12(月) 01:03:26.05ID:gFGRqSRq
自分らで書いたコードが0.1Mです、って一行あれば許されたのにな
2022/12/12(月) 01:03:29.10ID:BZoLN2AH
Rust盲目信者による闇組織が5chなどインターネット各所を監視し宣伝工作をしている、と
2022/12/12(月) 01:03:50.52ID:tX+KTUdP
だからワッチョイ付けろって言ったのに
34デフォルトの名無しさん
垢版 |
2022/12/12(月) 01:04:43.01ID:gFGRqSRq
他人が書いたコードと合わせて1.5Mの方だけしれっと書くのは適切じゃないね
2022/12/12(月) 01:08:59.58ID:TQPiS+Fx
>>29
> There are approximately 1.5 million total lines of Rust code in AOSP across new functionality and components such as Keystore2, the new Ultra-wideband (UWB) stack, DNS-over-HTTP3, Android’s Virtualization framework (AVF), and various other components and their open source dependencies.
https://security.googleblog.com/2022/12/memory-safe-languages-in-android-13.html
変に行間を読み取ってしまって勘違いを誘発すると言ってる?
36デフォルトの名無しさん
垢版 |
2022/12/12(月) 01:09:34.33ID:gFGRqSRq
言っておくが、0.1Mは立派な成果だぞ
それを書け、と言っている
37デフォルトの名無しさん
垢版 |
2022/12/12(月) 01:11:53.59ID:gFGRqSRq
1.5Mの数字だけ出すから、水増しのそしりを免れない

0.1Mは立派な成果、それを出しとけば良かった
2022/12/12(月) 01:12:12.96ID:TQPiS+Fx
>>36
文脈的にRustがどこのコンポーネントで使われているかを示すのが目的で、コード量はご参考程度に書いてあるだけだと思うが
記事全体の内一部にさらっと書かれている場所に突っかかりすきでは...
39デフォルトの名無しさん
垢版 |
2022/12/12(月) 01:13:01.81ID:gFGRqSRq
今までのRustの数字ってみんなこういうからくりだったのか?ってなるだろ
40デフォルトの名無しさん
垢版 |
2022/12/12(月) 01:14:16.04ID:gFGRqSRq
それこそ全員不本意だろ
2022/12/12(月) 01:17:30.12ID:TQPiS+Fx
文章としてはAOSPに対するRustの貢献という話だから1.5Mで良いのでは?
AOSP自身がどれだけ書いたかはまた別の話
2022/12/12(月) 01:18:19.96ID:TQPiS+Fx
0.1Mという数値を出すとして、どういう位置づけの数値てして説明するの?
43デフォルトの名無しさん
垢版 |
2022/12/12(月) 01:19:01.02ID:gFGRqSRq
>>41 はカラクリ推進派の様だね
44デフォルトの名無しさん
垢版 |
2022/12/12(月) 01:20:06.41ID:gFGRqSRq
>>42 >どういう位置づけの数値
自分たち書いたコード量に決まってろうが
45デフォルトの名無しさん
垢版 |
2022/12/12(月) 01:21:10.57ID:gFGRqSRq
externalの名前が実態通りだろ
2022/12/12(月) 01:21:55.03ID:TQPiS+Fx
>>43
カラクリ推進派って何?

>>44
それって本論であるRust採用でバグが減ったとどう結びつけるの?
47デフォルトの名無しさん
垢版 |
2022/12/12(月) 01:24:20.65ID:gFGRqSRq
>>46
>結びつけるの?
相関と原因のところを読め。Rustのカラクリ推進派は結論ありきのストーリー作りが好きだな
48デフォルトの名無しさん
垢版 |
2022/12/12(月) 01:26:05.71ID:gFGRqSRq
コード量、もカラクリ
バグが減った、もカラクリ
こういうそしりになるぞ
49デフォルトの名無しさん
垢版 |
2022/12/12(月) 01:26:34.63ID:gFGRqSRq
全員不本意だろ
2022/12/12(月) 01:30:48.03ID:TQPiS+Fx
>>47
言語間の比較はあるけどプロジェクト独自コードとそれ以外を区別してるようなところあった?
セクション名だけでも良いから教えてよ

あとカラクリ推進派とか変な造語で言われてもわからん
何かのレッテル貼り?
51デフォルトの名無しさん
垢版 |
2022/12/12(月) 01:31:50.90ID:gFGRqSRq
>>50 >何かのレッテル貼り?
カラクリ推進派とはあなたのことですよ
52デフォルトの名無しさん
垢版 |
2022/12/12(月) 01:34:06.61ID:gFGRqSRq
誤認誘発、過剰期待のリスクは無視するべきではない
2022/12/12(月) 01:35:03.87ID:TQPiS+Fx
>>51
ごめんね、何を言ってるかわかってあげられなくて
あと文章の後半だけじゃなくて前半にも反応してほしかったな
流し読みで確認したから見落としあるかもしれないので、原文でおかしなこと言ってるなら把握しておきたい
54デフォルトの名無しさん
垢版 |
2022/12/12(月) 01:36:12.87ID:gFGRqSRq
>変に行間を読み取って
>>50は変に行間を読み取らせようとしてるな
55デフォルトの名無しさん
垢版 |
2022/12/12(月) 01:37:35.10ID:gFGRqSRq
>>53
原文にかいてさえあれば、実態はどうでも良い
という事かな?
2022/12/12(月) 01:38:21.40ID:TQPiS+Fx
>>54
あなたの言う良くない文章は>>50で引用してる部分だけということかな?

>>55
それ以外に何を問題にしているの?
2022/12/12(月) 01:39:08.62ID:TQPiS+Fx
引用してるのは>>50じゃなくて>>35だった
58デフォルトの名無しさん
垢版 |
2022/12/12(月) 01:39:48.77ID:gFGRqSRq
>>56
カラクリ推進派=翻訳従事者関係者 ?
59デフォルトの名無しさん
垢版 |
2022/12/12(月) 01:40:20.61ID:gFGRqSRq
実態を大事にしような
2022/12/12(月) 01:43:08.80ID:TQPiS+Fx
AndroidのうちRustコードは1.5M
そのうちAOSP独自コードは0.1M
この話はおわり
61デフォルトの名無しさん
垢版 |
2022/12/12(月) 01:46:10.84ID:gFGRqSRq
>>60
1.5Mがそんなにうれしかったのか?

>そのうちAOSP独自コードは0.1M
これ原文筆者に明記するように言いに行けよ、関係者なんだろ?
62デフォルトの名無しさん
垢版 |
2022/12/12(月) 01:47:21.11ID:gFGRqSRq
原文にかいてさえあれば、実態はどうでも良い

それ以外に何を問題にしているの?

この返しには驚いた。良心のかけらもない
63デフォルトの名無しさん
垢版 |
2022/12/12(月) 01:49:04.49ID:gFGRqSRq
0.1Mをけなしてるのか?可哀想だろ
2022/12/12(月) 01:50:55.08ID:TQPiS+Fx
>>61
コードの量あたりの脆弱性数の言語間比較の話なのになんで依存関係除外するの?
脆弱性の原因になるのは独自に作った部分だけじゃないよね?
そんなに0.1Mが重要だと思うから原作者に書けと伝えたら?
65デフォルトの名無しさん
垢版 |
2022/12/12(月) 01:52:09.95ID:gFGRqSRq
>>64
君のカラクリストーリーはどうでも良いから
2022/12/12(月) 01:53:07.38ID:TQPiS+Fx
わかったわかった、理屈はどうでも良いね
あんたが道徳的に正しいよ
67デフォルトの名無しさん
垢版 |
2022/12/12(月) 01:55:21.13ID:gFGRqSRq
実態はどうでも良いカラクリ君が理屈を語るとは、笑う
68デフォルトの名無しさん
垢版 |
2022/12/12(月) 01:55:55.20ID:gFGRqSRq
屁理屈、詭弁だろ
69デフォルトの名無しさん
垢版 |
2022/12/12(月) 01:57:32.25ID:gFGRqSRq
しかもね、道徳じゃなくてリスクの話
70デフォルトの名無しさん
垢版 |
2022/12/12(月) 01:59:40.01ID:gFGRqSRq
加えて、プログラマーに対するリスペクト
2022/12/12(月) 02:01:36.06ID:TQPiS+Fx
あるアプリケーションを構成するコードの量を示すときは、自分たちが書いた量も示さないとリスクがあるしリスペクトに欠けるということね了解
72デフォルトの名無しさん
垢版 |
2022/12/12(月) 02:02:25.03ID:gFGRqSRq
そうだよ。カラクリ君。15倍は失態だったね
73デフォルトの名無しさん
垢版 |
2022/12/12(月) 02:03:00.26ID:gFGRqSRq
実態を大切にしような
2022/12/12(月) 02:04:04.46ID:TQPiS+Fx
googleの人にもぜひ伝えてあげてよ立派な考えなんだからさ
もうちょっとコンテキスト補ってあげないと伝わらないと思うけど
75デフォルトの名無しさん
垢版 |
2022/12/12(月) 02:05:54.83ID:gFGRqSRq
うっぷん晴らしにキャラ召喚しないでね
2022/12/12(月) 02:07:59.96ID:BZoLN2AH
あんたじゃないし、そんなことはしないよ
2022/12/12(月) 02:08:45.26ID:BZoLN2AH
なんか突然ID変わったな
ID:BZoLN2AH=ID:TQPiS+Fx
78デフォルトの名無しさん
垢版 |
2022/12/12(月) 02:09:06.83ID:gFGRqSRq
冗談きついな、別室で頑張ってね
2022/12/12(月) 02:11:40.12ID:BZoLN2AH
それおちょくってるのか、そういう組織があるとマジで思ってるのか、どつち?
80デフォルトの名無しさん
垢版 |
2022/12/12(月) 02:14:41.40ID:gFGRqSRq
>それおちょくってるのか、そういう組織
リスクの話をしている。おちょくりでもマジでもない
81デフォルトの名無しさん
垢版 |
2022/12/12(月) 02:15:18.25ID:gFGRqSRq
レピュテーションリスク
82デフォルトの名無しさん
垢版 |
2022/12/12(月) 02:16:26.89ID:gFGRqSRq
実態通りのレピュテーションが重要
2022/12/12(月) 02:17:58.12ID:BZoLN2AH
スレのみなさま、ごめんなさい
>>33は正しい
おやすみなさい
84デフォルトの名無しさん
垢版 |
2022/12/12(月) 02:20:53.27ID:gFGRqSRq
そうか、スレ立て人だったか。バイバイ、面白かったよ、別室で頑張ってね
2022/12/12(月) 02:26:04.34ID:na5n8HXk
成果を数値化した側は誤解を招き、リスクを数値化しようともしない側が数学的に優位なのはまあ分かる
3.14よりもπの方が誤解がないのと同じ
86デフォルトの名無しさん
垢版 |
2022/12/12(月) 02:28:14.68ID:gFGRqSRq
あらら、キャラ召喚してるじゃんw
87デフォルトの名無しさん
垢版 |
2022/12/12(月) 02:58:18.77ID:Igq6bqVZ
>>33
今回に関しては全く必要なかった
2つNGにしたら33の次は85にw
複オジじゃないからNGしやすくて助かる
88デフォルトの名無しさん
垢版 |
2022/12/12(月) 03:05:27.82ID:gFGRqSRq
そりゃどうも
89デフォルトの名無しさん
垢版 |
2022/12/12(月) 03:07:58.75ID:gFGRqSRq
85もキャラ変しただけだからNGしときな。
2022/12/12(月) 06:07:39.15ID:sG+NubL6
>>85
15倍の誤差だからπ=47.12って言う大暴投だからな
2022/12/12(月) 06:51:30.97ID:wN/j/0mR
深夜のレスバトルが興味深くなる見方、そして消えぬ複オジ軍団説

普段はまともぶってる放り投げキャラ?>>26がつつかれたら、速攻で複オジが出て来た
とにかく複オジは文書(翻訳)と仕様マウントが大事

放り投げキャラは次世代スレのwasmリソースコストおじ→複数人説

>>77が自演の決定的ボロなのか、あるいは監視引き継ぎミスなのか
引き継ぎミスなら→複数人説

しかも>>85がポエオジという可能性→複数人説
更にレスバトルが複オジじゃないと収拾したい>>87の登場

そういう目で見たらそう見える
2022/12/12(月) 07:35:06.40ID:BKVbG4TJ
>>91
いまいち

ミスではなく>>76が引き継ぎの瞬間で
同一人物を装うために>>77を入れてる
という見立ての方が断然面白いでしょ
2022/12/12(月) 07:35:25.61ID:T7WlM3CT
自称集団ストーカー被害者の供述と同じ
2022/12/12(月) 07:49:30.92ID:0yhb1mCe
引き継いだら即幕引き、その理由は?
>>79-80
でバトルの必要が無いと判断出来た
という見立てのが面白い
2022/12/12(月) 16:49:32.11ID:BsuscEYz
Fedora37のLinux KernelがVer.6.0になってたから新機能なんだろってググったら6.1から遂にRustサポートされるんだね
2022/12/12(月) 23:25:53.54ID:MqOriyPq
このスレ捨て捨てよ
2022/12/13(火) 22:51:58.96ID:PZobp7zP
Android12のtokeiしたぞ計算は自分でやれ
===============================================================================
Language Files Lines Code Comments Blanks
===============================================================================
Assembly 10 1835489 1776138 61 59290
GNU Style Assembly 511 698434 666001 20331 12102
C 2269 858479 652278 119729 86472
C Header 20347 4528431 3057716 1023059 447656
C++ 17900 9289538 7491429 858792 939317
C++ Header 305 157423 120050 11387 25986
Go 805 271377 201441 35705 34231
Java 57305 14796003 9709131 3245016 1841856
JavaScript 91 25468 20400 2951 2117
Kotlin 1833 319017 225519 58641 34857
Python 3721 933286 747682 79727 105877
TypeScript 231 680201 536363 142914 924
-------------------------------------------------------------------------------
Rust 203 47094 38569 3786 4739
|- Markdown 148 4044 13 3696 335
(Total) 51138 38582 7482 5074
===============================================================================
Total 105531 34440240 25242717 5602099 3595424
===============================================================================
externalの名前が実態に同意だしそもそもexternal内はダブルカウントが多発している
2022/12/13(火) 23:23:57.37ID:wZtwdQkr
もっとGoがフィーチャーされてもいい

Rust 0.27%(Android13)
Rust 2.19%(rust増減/全体増減)
Rust 6.25%(rust増減/native増減)

Go 0.94%(Android13)
Go 3.14%(go増減/全体増減)
Go 8.97%(go増減/native増減)

native(C/C++,go,rust,asm)
2022/12/13(火) 23:30:32.49ID:5abcV+yr
相関で言うと、致命的バグが減ったのはGoが増えたおかげ
2022/12/13(火) 23:37:00.82ID:wwjAZKKd
GoはNSA公認の安全志向言語だからね
2022/12/14(水) 01:02:52.63ID:ITXTdsK+
我が軍のリターンと我が軍のリスクを比較するべきで
味方のリターンと競争相手のリターンの差をカイゼンさせようとするのは合理的ではないと思う
2022/12/14(水) 01:14:31.36ID:FVRGSfZv
最初から違和感があると思っていたが
元記事ではGoが何故か除外されてる

ストーリー構成に不都合だったのか
相関だと何とでも言えるんだね
2022/12/14(水) 01:27:29.73ID:yU9uAi27
>>101
良くないね、堂々と数字のカラクリを肯定するとは
2022/12/14(水) 01:56:11.07ID:5mkAA7Tq
>>101 我が軍
こいつ遂に開き直って複おじ複数人疑惑を隠さなくなった
引き継ぎは2時?

裏舞台でこそこそしてろよ、表舞台に出て来るんじゃないぞ
2022/12/14(水) 06:45:32.23ID:RA7cvU7V
>>102
元々C/C++のメモリー障害の話なので低レイヤーで使えないGoを対象外にするのは当たり前だと思うぞ
>>98 の native(C/C++,go,rust,asm) もどう言う根拠でGo入れてるのかよくわからん、Go入れるならJavaが入らない理由を示してほしい
2022/12/14(水) 07:01:51.79ID:Jcr0Ea1q
ストーリーの無い生データを見た実際のところ、バグデータのある期間(~android12)でのRustは高々0.13%しか無い
C++の検証ツール類の活用だったりGo活用だったりの方が圧倒的に貢献していると考えるのが普通
他言語の成果を横取りしてる印象を持ったし、データを見たマの反発を買うのも当然
2022/12/14(水) 07:15:30.66ID:qnQQMcYI
>>105 ...の話なので...
>>105 = 放り投げ常習犯のRustカラクリストーリー君
2022/12/14(水) 07:40:22.86ID:3cYTS+R6
>>106
ほんとこの通りだわ
今回みたいに1.5Mの疑義が出て数字を掘られなければ、メモリバグ削減はRustの成果だと信じ込まされた訳だし、恐ろしいわ
2022/12/14(水) 08:29:54.62ID:RA7cvU7V
>>107
カラクリだと言うならせめて
> >>98 の native(C/C++,go,rust,asm) もどう言う根拠でGo入れてるのかよくわからん、Go入れるならJavaが入らない理由を示してほしい
ぐらいには回答しなよ
2022/12/14(水) 08:46:08.12ID:l9mIlMff
あのね、さすがにもう、原文の脚色を軸にした議論に価値は無い
>>109
Goを蹴落としたいだけの言いがかりになるからやめたほうがいい

1.5Mの数字もちだして来たのどうせ>>105,109なんだろうし、この際言っておくけど、

迷惑でしかない
2022/12/14(水) 12:43:46.50ID:RA7cvU7V
>>110
はい、逃げた~
そもそもここRustスレだから迷惑なのはお前な
2022/12/15(木) 18:34:29.90ID:XGuELYQs
Rust自体は好きで趣味で使ってるんだけど、最近の猫も杓子もRustっていう一部の風潮には、在りし日のC++やJavaが持て囃されていた時代を思い出してしまう時がある
2022/12/15(木) 18:53:18.12ID:4nUn5UbZ
奴隷言語ってことなのかもな
2022/12/15(木) 19:32:12.34ID:eVXaJ4u5
同意。
趣味では楽しく使ってるけど仕事では使いたくないわ。

不具合とか新規要件とか起因で所有権周り軒並みいじる必要が出てきたりしたら泣いちゃう。
2022/12/15(木) 20:01:15.60ID:adPtbWG7
>>112
> 最近の猫も杓子もRustっていう一部の風潮
そんな風潮ホントにあるの?
C/C++の置き換えがメインだから分野はかなり限られそうだが
2022/12/15(木) 21:34:29.95ID:2hO+Mt8T
正解は一つだけのようなことは昔Pythonが標榜していたけど
違反や無視しても棒で殴られたりしなかったので普通に普及した
2022/12/15(木) 21:48:07.72ID:xFKc8Du5
C や C++ が駄目な部分を改定でどうにかしようとしてもツギハギだらけでますますグダグダになるばかり。
C や C++ みたい (いわゆるシステム記述言語) なことを安全にやれるように更地から設計しなおそうという試みの中では Rust は比較的よいと思うよ。
2022/12/15(木) 23:23:09.65ID:GGhsuwM3
>>117
キミは仕事でRust使ってんの?
使ってなさそうな感じを受けたけど
2022/12/15(木) 23:37:14.28ID:wuh/WyJD
LinkedListってなんで使われないんですか?
VecDequeのほうが性能いいの?
2022/12/16(金) 01:36:50.79ID:2he3/3ZS
>>119 性能いいことが多いからじゃないかな。
https://www.stroustrup.com/Software-for-infrastructure.pdf
> ... Consider a simple example: generate N random integers and insert
> them into a sequence so that ...
> Now, for which N is it better to use a linked list than a
> vector (or an array) to represent the sequence? ...
> ... When I ran the experiment on my 8-Gbyte laptop, I found N to be much
> larger than 500,000. ...
2022/12/16(金) 01:45:46.48ID:qUkmAe13
言語仕様はまあいんだろうけどライブラリがうんこっこ
2022/12/16(金) 02:56:52.27ID:3ITpan43
自演か軍団かどうでも良いが纏めるぞ

>>112
息を吐く様に嘘を混ぜるのはよせ
猫も杓子も...←ウソ シンプルに分かりやすいウソ
在りし日の...←ウソ 今も昔もJava/C++の時代 + JS/Python/C#
https://i.imgur.com/xwnzvYQ.png

>>117
大人しくしてれば良いものを、そのキャラまたどぶに捨てるのか
もう終わりだよ、そのコテハン

>>117,119-121
話題のすり替え方が雑になってワンパターン
2022/12/16(金) 06:42:28.75ID:2Krh7+9V
>>85=>>112
よく見たら嘘の混ぜ方が完全一致
2022/12/16(金) 07:28:20.01ID:YV6XWhOF
>>122のデータ面白い
例えば、0.4%以下集団の慎ましさがまるで違う

Swift/Kotlin/Dart→分野に特化して第一候補、安泰
(モバイルアプリ開発は全体の中では小さいパイだけど)

Rust→システムの低レイヤー分野に特化すれば良いのに、
各方面のスキマ案件や非典型案件で、置き換え風潮だとか
吹聴するから、そこのメインストリームから反感買う
焦り過ぎ
2022/12/16(金) 07:48:14.80ID:iwbHqI4G
得意分野、スキマ案件や非典型案件、全部集めて0.30%
Rust全然キテないじゃん
2022/12/16(金) 08:03:19.06ID:ECVECWXD
無名の謎言語よりも強いぞ
2022/12/16(金) 08:08:17.97ID:pYrl9qIa
Rustもすぐに一巡して新規消滅まっしぐら
無名の謎言語と競うことに

どうしてこうなった?ry
128デフォルトの名無しさん
垢版 |
2022/12/16(金) 11:56:22.77ID:7LaXToxn
>>119
LinkedListがフィットするユースケースが少ないから

LRUキャッシュをHashMap+LinkedListで実装する時みたいにランダムインサート/デリートがメインでリストを高速に走査する必要がない場合に使われる
2022/12/16(金) 14:41:11.47ID:mVtvcCjK
TypeScriptでお馴染みのPrismaってRustでも使えるんか
2022/12/16(金) 15:24:01.50ID:qfpmvh4y
>>129
元々Rustで作ったバイナリをJSでラップしただけのライブラリだった
2022/12/16(金) 17:29:26.91ID:dpgra0Sg
>>120
LinkedListよりvectorの方が「ほとんどの場合速いからvectorを使うべき」
と言っているのは、Stroustrup氏だけ。
2022/12/16(金) 18:47:30.36ID:2he3/3ZS
>>131 嘘つくのやめてもらっていいですか。
https://www.google.com/search?q=vector+list
いま2位に出たこれ↓見ても引用と併せて「ほとんどvector」って言ってる人が少なくとも二人いる。
https://ja.stackoverflow.com/a/6008
> 大抵のケースでは vector<T> 利用で十分かと思います。(Tは要素の型)
> Scott Meyers, "Effective STL" でも、Item 1で次の言及があります
>> vector is the type of sequence that should be used by default.

俺も言うし>>128も言ってそう。
133デフォルトの名無しさん
垢版 |
2022/12/16(金) 19:52:47.31ID:P/cVRczV
LinkedListがいいとかVectorがいいとかじゃなく適材適所やろ
2022/12/16(金) 20:14:33.69ID:nhvY9+vf
>>133
適材適所なのは前提として承知の上で「vector が適材である場所が多い」という話だろ。
2022/12/16(金) 21:44:58.60ID:6DlWbXOy
vectorはメモリが並んでるからキャッシュヒット率が高くて速いって教わった
C++だと裏で追加したときにreallocされて参照が切れるリスクがあるけど
Rustだと一応安全だし
2022/12/16(金) 21:55:52.92ID:k9rJal3H
>>122
まず長文を嫌って端折ったのが悪かった、ごめん
Java/C++の在りし日ってのは、特にJavaなんだけど、JavaでGUIデスクトップアプリ作ったりアプレットでフロントをやってた時代の雰囲気と、Rustでwasmフロントやってたり、tauriがイケてる!GUIの決定版!みたいに言ってる奴が似てるなって思ったのよ
WEB全盛の昨今これらは趣味レベルでしかないので数字には出ないし、当然Rustコミュニティやプロダクト全般の事について言ったわけじゃないので"一部"と書いたんだけど、Rustaceanの一部ではなくプログラマコミュニティないし業界の一部とも読めてしまうね
これもごめんなさい
137デフォルトの名無しさん
垢版 |
2022/12/16(金) 23:54:59.70ID:b2g/f5EB
>>132
ここにいるやつらは データ構造とアルゴリズム からやり直したほうがいいんじゃないか?

何を持って早い?っていってるんだ?

queueを実装するのにvector使うやつは愚か者だし
ソートするデータにlinked list使うやつも変なやつ

たいていVectorでOKとかいうのは脳みそ停止してる。ちゃんと考えるべき。

linked listは中間にデータをいれるとか、要素を取り除くのが得意なだけ。
普通に適材適所だろ?
2022/12/17(土) 00:08:08.60ID:VEec8B0L
まずお前はアルゴリズムうんぬんの前に日本語からやり直せ
はちみつの割にはまともなこと言ってる

> 適材適所なのは前提として承知の上で「vector が適材である場所が多い」という話だろ。

あとqueueの実装にvector使うのは別に変じゃない、リングバッファも知らんのか?
2022/12/17(土) 00:12:22.66ID:QKb/ZQVv
>>137
比較の例は>>120で挙がってるし、「普通に適材適所」を否定してる人も居ないし、
いったい何を見てレスしてるのかわからなくて怖い。
2022/12/17(土) 01:03:01.35ID:7EPFyoxp
>>120
その記事で、Stroustrup氏は、非常に特殊な例で実験しているように思える。
最初から明らかにvectorに有利、LinkedListに不利な実験。
これは最初からLinkedListに不利なことが脳内でも分かるので、
それが分からないとしたらstroustrup氏は想像力が不足している。
Stroupstrup氏本人は難しくて理由が分からない、みたいに思ってるらしい。
2022/12/17(土) 01:08:13.28ID:7EPFyoxp
>>134
Stroustrup氏はもっと極端で、LinkedListがvectorより速度面で上回る
ケースはほとんど無い、という程度の事を言っているように思う。
2022/12/17(土) 01:15:11.07ID:7EPFyoxp
>>140
[補足]
コンテナ内にN個の要素がある場合、
リンクリストは、1個の要素の追加はO(1)。しかし、全走査や探索は、O(N)。
彼の実験だと、1個追加する際に、追加する場所を探すために平均で N/2 個の
ノードを巡ることになっているから、
1要素あたりに必要な時間 = 場所を探す時間 + 追加の時間
= O(N/2) + O(1)
= O(N)
となる。一方、vector の場合、
1要素あたりに必要な時間 = 場所を探す時間 + 追加の時間
= O(N/2) + O(N/2)
= O(N)
となる。
オーダー的には、O(N)で同じだが、前者は、キャッシュミスが酷くなるので、
「係数」がとても大きくなっている。
だから、前者の方が後者よりも遅くなっていっる理由は明確。

結論は、要素を追加する際に「場所を探す」ことを行なっていて、それがLinkedList
の不得意分野だから。
2022/12/17(土) 01:26:25.05ID:7EPFyoxp
>>142
[補足2]
リンクトリストとvectorで、条件を満たす1個の要素を線形探索で探す時に
かかる時間は、共に O(N)で、オーダー的には同じ。
ところが、彼の実験の場合、(均等確率の完全に近い)乱数で要素の追加される
場所と追加される順序が強くランダムになるようにしている。
この条件だと、途中結果の集合を線形探索する時、vectorは、
要素のアドレスが連続しているのでキャッシュの先読み(prefetch)がよく聞くが、
LinkedListは、アドレスが強くランダムになるので、キャッシュの先読みが
上手く働かず、1個の要素当り、現在のCPUで、80クロックほどのレイテンシーが
発生してしまう。
つまり、この実験においては、要素追加の場所をランダムにしているせいで、
要素を巡る際に、
vectorは、メモリーリードの追加レイテンシーが0に近い。
LinkedListは、メモリーリードの追加レイテンシーが80クロック程度かかる。
2022/12/17(土) 01:27:47.24ID:QKb/ZQVv
>>140-141
そういう極端な解釈や誤解を解くためと思われる FAQ が置いてある。
https://www.stroustrup.com/bs_faq.html#list
まずはこれを読んで、それでもなにか異論を唱えたいならこの中のどの部分についての異論なのか、
自身の主張がどう違うのか明らかにするように。
2022/12/17(土) 01:33:08.88ID:7EPFyoxp
>>144
俺が言いたいのは、Stroustrup氏は、数学的想像力においては、
俺より馬鹿だということだ。
2022/12/17(土) 01:36:35.34ID:7EPFyoxp
この分野は、専門家かどうかより、生まれつきの頭の良さがものを言う。
彼ははっきり行って、計算速度の見積もりにおいては才能が無い。
彼が評価されるべきは、
誰もオブジェクト指向を知らない時にSimulaのようなオブジェクト指向言語を
知っていて、それをCに応用したというだけ。
vectorやLinkedListの速度に関しては彼は間違っている。
2022/12/17(土) 01:38:43.69ID:7EPFyoxp
「測定無しで語らないで下さい」
というのも理論を軽視している学者の典型例。
日本でも物凄く多い。
自分が理論を正しく理解できて無いから、テストしないと見積もることが出来ないだけ。
2022/12/17(土) 01:46:15.68ID:7EPFyoxp
彼は理論を分かって無いことが明白。
この実験において、LinkedListがNが大きくなると有利になると思い込んでNを
大きくしていったらしい。すると、彼の予想に反してそうならなかった。
しかし、俺には理由が分かる。
むしろ、LinkedListで、Nで割った時の単位要素あたりの時間は、あるNが
ある値を超えたときから曲線の傾きが大きくなる。

(i) N < N0 : キャッシュが働く時:
f(N) = a1 * N + b
(ii) N > N0 : キャッシュが働かない時:
f(N) = a2 * N + b

DDR4-SDRAM での推定の係数 :
a1 = 0.5
a2 = 0.5 * 80

俺は、これを数秒間で導いたから、ケアレスミスが含まれるかもしれない。
2022/12/17(土) 01:50:24.83ID:7EPFyoxp
>>148
[ミス訂正]
a1 = 0.5 * L
a2 = 0.5 * (L + 80)
L = ループ一回当りのマシン語レベルでの見た目のクロック数。

0.5 を掛けているのは、1回の線形探索において、
平均移動回数が (N / 2) 回と推定されるから。

まだ、ケアレスミスがあるかもしれない。
2022/12/17(土) 02:27:39.08ID:QKb/ZQVv
すごいな。0点回答じゃん。
今後のため、ぜひコテハン頼む。
2022/12/17(土) 02:32:26.93ID:tahIU/4X
>>142
> = O(N/2) + O(1)
> = O(N)
ナニコレ?
2022/12/17(土) 02:49:00.46ID:k1W2kl1x
>>150
ID:7EPFyoxp = はちみつがはちみつ搾り取った後の残りカス
153デフォルトの名無しさん
垢版 |
2022/12/17(土) 03:25:53.37ID:sANdR5x8
100点おじさん頭悪いのは知ってたけどさすがにここまでとは思ってなかった
文章読解力に難があり過ぎ
2022/12/17(土) 07:25:20.60ID:jr3rWKyM
>>150,152-153
ちょっ、はちみつオジ=C++スレの天才オジなのか?
そしてすごい0点オジに、頭悪い100点オジ?
誰か複オジ軍団相関図、書いてよ!
2022/12/17(土) 08:32:26.89ID:4FUmGBLH
Stroustrupもオジ
2022/12/17(土) 09:13:23.75ID:FhlO/q3l
適材適所にオジ
2022/12/17(土) 09:40:37.34ID:7jrYNUaI
>>136
これよく見たら謝ってるようでそうでもない
当時Javaの時代の雰囲気(全体)と今のRustのイキリ勘違いヤロウ(一部)は全然レイヤーが違う
2022/12/17(土) 10:03:46.47ID:yTH8JJEo
>>122
Rustの0.30%には流石にがっかりきた

比率からして既に一巡したんだと思う
Java vs Scala(JVM, 17.5%/0.47% => 何巡もして37倍)
C/C++ vs Rust(Native, 8.24%/0.30% => 一巡目で27倍)
2022/12/17(土) 10:51:59.45ID:Qk229x0R
OSに依存しないライブラリの行数は、Android全体の行数で割り算できない
これが割り算のカラクリか
2022/12/17(土) 12:18:07.73ID:Wsp+a048
フロントエンドのちゃらい流行り廃りを追いかけ続けるのに疲れて
早めにバックエンドに転向したいと目論んでいた筋にとっとは
Rustは無駄だと思い知ったことだろう

GoやっとけよGo
2022/12/17(土) 12:43:51.64ID:Qk229x0R
しょーきょー法でGoみたいな風潮もいかがなものか
2022/12/17(土) 13:48:17.15ID:xCKnPakF
自分はRust使うけど人にはとりあえずGoにしとけば?って言っちゃうな
VSCodeなんかと同じで無難感はある
163デフォルトの名無しさん
垢版 |
2022/12/17(土) 14:06:02.86ID:1OvQaYAC
統一教会は日本で、ゆとりある教育を提唱しているが、韓国では全く逆のことを言ってるからな。
騙されるなよ。
2022/12/17(土) 14:19:36.18ID:e3Jjde95
>>157
対象の集団規模やその集団のレイヤーが異なることと、各々の集団に対して類似又は共通の雰囲気・要素が存在することないし感じられることは両立しうると思わない?
165デフォルトの名無しさん
垢版 |
2022/12/17(土) 14:38:10.16ID:1OvQaYAC
集団って統一教会のことか。
166デフォルトの名無しさん
垢版 |
2022/12/17(土) 14:42:50.70ID:1OvQaYAC
統一教会と自民党は両立じゃないだろ。
日本における統一教会の実行部隊が自民党。
2022/12/17(土) 15:23:19.74ID:y2/IfEDT
なんでRustのスレで統一教会が出てくるんだ…

統一教会に限らずカルトの関心は政治権力だから判定条件はis_自民党()じゃなくis_政権与党()だろ
必ずしもすべての政党が実行部隊機能を実装してるとは限らないけど
自民党を取り換えればカルト問題が解決するみたいな発想だとデバッグに支障がでるぞ
168デフォルトの名無しさん
垢版 |
2022/12/17(土) 15:42:05.55ID:Sr9loTqZ
>>167
ナイーブな考え方だなぁ
宗教法人を解散させればカルト問題は半分解決なんだけとなぜ解散させないのか少しでも考えたことある?
2022/12/17(土) 16:16:29.71ID:CCt/1VrG
Rustが適材適所なのはゼロではないと承知の上で「Goが適材である場所が多い」という話だろ
2022/12/17(土) 16:35:05.53ID:tBNmuOUO
Rustはlinuxのドライバー作成専用言語
2022/12/17(土) 16:40:34.79ID:2HWiBBP7
Rustはしょーきょー法で>>170みたいな風潮
2022/12/17(土) 17:07:17.99ID:OmKniCOI
>>168
よっぽどナイーブな考え方で草
中世の人かな?
2022/12/17(土) 17:29:21.75ID:vKjf1YhM
統一教会信者出てきたな
174デフォルトの名無しさん
垢版 |
2022/12/17(土) 18:34:12.05ID:nURLlX7p
そうかそうかww
2022/12/17(土) 19:05:38.21ID:u3ABxrNN
>>151
要素数Nの時に何らかの処理Aに掛かる時間をf(N)とするとき、
O(g(N))は、ある N0 があって、N0 より大きな どんな実数 N に対しても、
f(N) / g(N) < アルファ
が成り立つことを意味し、「押さえられる無限大」、といい、
ランダウ記号(の一種)、または、ラージO 記法という。

だから、O(N/2)=O(N)であり、O(N)+O(1)=O(N)である。
2022/12/17(土) 19:13:53.37ID:u3ABxrNN
>>175
[補足]
このことは、
f(N) = O(g(N))
とも書く。以下、厳密性はないが、理解のために書いておけば、
f(N)=O(1)とは、大まかに言って f(N) = b
f(N)=O(N)とは、大まかに言って f(N) = a・N + b
f(N)=O(N^2)とは、大まかに言って f(N) = a2・N^2 + a1・N + b
を意味する。だから、
f'(N)=O(N/2)とは、大まかに言って f'(N) = a・N/2 + b のような意味になるから、
a' = a / 2 と書いてしまえば、
f'(N) = a'・N + b となり、f'(N)=O(N)と言えることが分かる。
f''(N)=O(N)+O(1) は、大まかに言って、
f''(N)= { a・N + b1 } + b2 = a・N + (b1+b2) であるから、
f''(N)=O(N) であることがわかる。従って、

O(N/2)+O(1)=O(N)
であることが分かる。
2022/12/17(土) 19:21:03.57ID:u3ABxrNN
>>176
[補足2]
また厳密性を無視して大体で書くと、
f(N)=O(g(N))
の場合、f(N)のNに関する最大次数がg(N)と同じ、という意味。
だから、g(N)がNに関して k 次元だと、f(N)もNに関して k 次元、という
ことを概ね意味する。だから、大体、
f(N)=O(1) とは、f(N)=b を意味する。
f(N)=O(N) とは、f(N)=a * N + ・・・ を意味する。
f(N)=O(N^2) とは、f(N)=a * N^2 + ・・・ を意味する。
なので、f(N)=O(N/2)+O(1)だと、
f(N) = a・N/2 + b
みたいになり、これは、N に関して 1 次関数だから、Nに関する最大次数は 1。
だから、O(N)ということになる。
2022/12/17(土) 19:24:51.43ID:u3ABxrNN
>>177
[補足3]
グラフを描いたときにどこかで無限大になるような特殊な関数以外は、
「テーラー展開」で近似することが出来て、
f(N)=a_k・N^k + a_{k-1}・N^{k-1} + a_{k-2}・N^{k-2}+・・・+
   a_1・N + a_0 + (少しの余り)
のように書けることが知られている。
それを知っていれば、理解の助けになる。
2022/12/17(土) 19:50:24.96ID:VEec8B0L
O(N) とかを最近知って説明したくてたまらないんだろうなw
2022/12/17(土) 19:54:00.74ID:IjrFOfax
すまない、彼はド素人だから見逃してやってほしい
山奥で一人でプログラミング勉強中なんだろうね
情報系学生や職業マが一ヶ月目に覚えることを皆に発表したいらしいんだw
2022/12/17(土) 20:18:30.40ID:Qk229x0R
4ヶ月で教えたいこと
1 実数クラスは複素数クラスを継承しない
2 実装継承だろうがinterface継承だろうがオーバーライドは遅い
3 オーバーロードは速い
4 templateも速い
182デフォルトの名無しさん
垢版 |
2022/12/17(土) 20:33:54.64ID:hdE6AFs/
今となっては不要な知識だな
2022/12/17(土) 21:25:28.93ID:y2/IfEDT
Stroustrup氏の名誉のために補足しておくと、発端?の120の記事は
Software Development for Infractructure(インフラストラクチャ用のソフトウェア開発)
ってタイトルで、vectorとlinked listの比較を出してるセクションの見出しは
Access memory less(メモリアクセスは少なく)
で、書き出しは
When I first wrote microcode to squeeze the last bit of
efficiency out of a processor, a good rule of thumb was that
the system could execute nine instructions while waiting
for a memory read to complete.
(私が初めて効率を追求したマイクロコードを書いたときに目安にしたのは、
システムが1つのメモリの読み取り完了を待つ間に9つの命令を実行できるということだった)

インフラとかファームウェア向けに開発する時はポインタ(間接参照)使うとオーバーヘッドが大きいから
多少非効率に思えてもvector使った方がいいよって内容になってる
端的に言ってしまえば適材適所の話でアルゴリズムとかオーダは関係ないはず(全部読んでない)

余計なこと教える前に読解力を鍛えてやってくれ
184デフォルトの名無しさん
垢版 |
2022/12/17(土) 22:23:54.16ID:o5Fxz66L
>>183
おいおいまた誤訳君かよw
お前も読解力鍛えろ
英語が多少不得意だとしてもパラグラフ全体を読めばそんな訳には絶対ならんだろ
2022/12/17(土) 23:38:44.03ID:t4TbQFP4
昔のCPUでアセンブラの経験あると
間接アドレシングなんか、クロック数かかり過ぎてアホらしいから、
そういうレベルの話だろ
ただ、この記事は2012年で、パイプラインやキャッシュの話も出てる
2022/12/18(日) 00:59:42.45ID:KVP7/Uup
最近の自動翻訳は分かりやすくて優秀過ぎる

マシンのアーキテクチャやプログラミング言語にもよりますが、ベクターはNの値が小から中程度であれば最適という答えになります。
8Gバイトのノートパソコンで実験を行ったところ、Nは50万よりはるかに大きいことが分かりました。
図1の赤線はリスト、青線はベクトルでかかった時間を示しています。
これは微妙な違いではない。X軸は10万要素単位、Y軸は秒単位です。
つまり、「小さなリスト」に対しては、リンク構造よりもベクトルの方がリストの表現として優れているのです。



インフラアプリケーションの開発者は、コンパクトでアクセスパターンが
予測可能であることが効率化に不可欠だと言っています。
消費電力はメモリアクセスの回数にほぼ比例するため、
赤(リスト)と青(ベクトル)の線は、スマートフォンのバッテリーの消費量や必要なサーバーファームの数の一次近似値です。
187デフォルトの名無しさん
垢版 |
2022/12/18(日) 01:25:48.90ID:Pt3aaRaQ
自民党の問題点は、統一教会とつるんでるのがばれても縁を切らず、共存共栄の道を模索するとドヤ顔で記者会見したこと。
2022/12/18(日) 07:34:33.80ID:wAFe3NPG
>>170
Linuxドライバーはオープンソースが好まれるから、
Rust製ドライバ作成は仕事ではなく趣味プログラマが細々とやるんだろうな

ただ働き奴隷言語でOK
2022/12/18(日) 07:50:17.66ID:pDoyuEtS
LinuxでもRustイキリ飛ばし記事が出て来るだろう
数字のカラクリが無いかどうか皆でTokeiしような
190デフォルトの名無しさん
垢版 |
2022/12/18(日) 07:50:19.13ID:Pt3aaRaQ
最新のLinux Kernel 6.1はRustyというコード名前だし。
Rustに全振りしてるのでは?
191デフォルトの名無しさん
垢版 |
2022/12/18(日) 07:51:05.11ID:Pt3aaRaQ
LinuxはC++との相性最悪だし、Rustへ移行するしかない。
2022/12/18(日) 07:58:07.32ID:uoxQL2Fw
LinusのドSでただ働き奴隷がどれだけ頑張るのか
おらワクワクして来たぞ!
早くTokei見たい!
2022/12/18(日) 08:01:27.15ID:x48rVm/G
見せてもらう、イキリRustの全振り移行とやらをw
194デフォルトの名無しさん
垢版 |
2022/12/18(日) 08:04:19.65ID:Pt3aaRaQ
コード名前には突っ込んでこないのか。
せっかくご用意したのに。
2022/12/18(日) 08:08:01.02ID:x48rVm/G
GoはNSAのメモリ安全公認言語だしイキリゼロ
堅実だわ
2022/12/18(日) 08:09:33.26ID:x48rVm/G
名前でイキレてると考えてるRustが惨めでならない
2022/12/18(日) 08:14:25.29ID:x48rVm/G
Rustはボチボチ、って周りには答えることにした
2022/12/18(日) 08:24:24.51ID:VbINaFFK
>>195 Goの何が良いのか分からないが、したたかだったのは認める
>>122 なんでこんなに差がついのか?
>>169 これが答え
2022/12/18(日) 08:27:05.71ID:VbINaFFK
言語仕様の優劣でイキリマウントしてた俺たちが需要を勘違いしてただけ
2022/12/18(日) 09:11:48.81ID:f04NRte7
>>198-199
いろいろ立場によって、Goは食わず嫌いで済まされないか...
そのうちに、やってないとGoを目の敵にしていると疑われて、
こっちがイキリ判定されるから
2022/12/18(日) 09:21:33.95ID:/OPYjfYK
適材適所にGo
処世術にGo
隠れ趣味にRust
2022/12/18(日) 09:23:43.37ID:rHzdtEqK
Kernelいじるので仕方なくやってる
2022/12/18(日) 09:26:47.68ID:mA0KcrEy
コソコソRust
イヤイヤRust
なのに愛され言語No1←あっ、
2022/12/18(日) 09:46:37.39ID:x4/bAggI
>>201
処世術にGoというのは絶妙なポイント突いてる
PythonだとAIで突っ込まれて実力が露呈するから
Rustは今年印象を悪くした
2022/12/18(日) 10:21:16.41ID:NDMThvXE
>PythonだとAIで突っ込まれて実力が露呈するから
知ってたわ
Rust仕様マウントerはそういう実力の無い奴
2022/12/18(日) 11:18:40.85ID:TnNRBRmL
はちみつオジは仕様マウントerですか?
はちみつオジは仕様マウントerですか?
207デフォルトの名無しさん
垢版 |
2022/12/18(日) 13:25:28.85ID:Pt3aaRaQ
Haskellと協力しよう。
2022/12/18(日) 13:55:56.71ID:VIbL9AVd
goのメリット
文法の単純さ
ライブラリ、リントなどのエコ環境の良さ
ビルド速度
バイナリ配布の簡易さ

これだけあれば十分だろ。
2022/12/18(日) 14:04:55.78ID:HLXapubf
標準ライブラリが充実してるのが一番大きいだろ
2022/12/18(日) 14:09:44.46ID:fqk1SiW3
次世代言語スレでやれ
2022/12/18(日) 14:28:32.59ID:XqzxcH1y
各言語の複雑さの総和は大きい
だから、一つしか選べないとかそれ以外と戦争とかしない限り、単純さは現実的でない
2022/12/18(日) 14:50:00.51ID:/g1tYkuT
>>185
そんなことはない。486以降では、昔から間接アドレッシングと
インクリメントのクロック数は同じだった。
1. 間接アドレッシング(p = p->next) :
mov ebx,[ebx+メンバのクラスの先頭からの相対アドレス] ;1クロック
2. ポインタのインクリメント(++p) :
add ebx,クラスのバイトサイズ ;1クロック
#Stroustrup氏はキャッシュの話をしている。
2022/12/18(日) 15:04:42.63ID:/g1tYkuT
>>178
[補足]
なお、O(・) 記号では、log N はよく出てくるが、log x は x=1の周りでは
次のような無限級数で(近似的に)展開できる。
log(1+x)=x-(1/2)x^2+(1/3)x^3-(1/4)x^4+・・・
無限級数なので、xの最大次数は、無限大。
だから、178 では、k が有限で止まっている形になっているが、本当はそうではない。
また、上記の展開式を見ると、正負の符合が交互に出てくることが分かる。
そんなに単純ではないが、このことも影響して y = log x は、dy/dx → 0 ( x → 無限大 )
であり、傾きが極限的にどんどん 0 (水平) に近付いていく。
つまり、N = 1 + x が変化してもほとんど変化しなくなる。
だから、log N は、「みなし定数」的と言われることがある。
なお、この時、逆関数で考えると、x = exp(y) であり、
y = exp(x) のグラフを描いて、y = x で(対称的に)折り返すと考えやすい事がある。
2022/12/18(日) 15:09:00.64ID:/g1tYkuT
>>213
なお、この展開式にもウソがある。
それは、log(1+x)で、その展開が正しいのは、|x| < 1 の範囲に限られることを
言及せずに誤魔化していること。
しかし、x → ∞で、dy/dx → 0 の証明は出来る。それは、
y = exp(x) が、dy/dx → ∞ だから、dx/dy → 0 であり、
逆関数 y = log(x) だと、dy/dx → 0 であるから。 //
2022/12/18(日) 15:44:41.47ID:W2G5o+in
高校数学を長々喋らんでいいw
2022/12/18(日) 15:50:01.93ID:+UGBJzct
高校数学を演説したいんよね
それ聞かされる周りの高学歴の気持ちになってみてほしい
217デフォルトの名無しさん
垢版 |
2022/12/18(日) 15:51:59.31ID:3W2C0MJT
>>205 それ分かる
SO/HN/rで仕入れた俄か知識をひけらかすために、質問と回答を自演するパターン>Rust仕様マウントer
厚かましくも、スレ民に教えたい、と思ってるんだろうけど姑息すぎてスルーしてる
時々引っかかるカモがいる様に見えるけど自演なんだろうな

>>206
自分で考えろ
218デフォルトの名無しさん
垢版 |
2022/12/18(日) 16:07:41.26ID:RtgSwVtd
>>215-216 俺も分かる
数学科卒でRustのメモリ安全性は(自称色々条件つけて)数学的証明付きだと吹聴してた実力の無い奴がいた
情報系院卒だったかな
219デフォルトの名無しさん
垢版 |
2022/12/18(日) 16:28:02.98ID:vIybIBIV
>>208-209 なるほどね
加えてGCC LLVM以外の独立系native codegenにしては高速なバイナリを吐く様だね
独立系と言ってもGoogleなんだから当然っちゃ当然か
220デフォルトの名無しさん
垢版 |
2022/12/18(日) 16:47:10.99ID:7QJNj+m3
迷惑オジ達に共通してるのは論理的思考レベルの低さ

読解力がない
要点をつかめない
主張を簡潔にまとめられない
全部原因は同じ
2022/12/18(日) 16:50:21.46ID:nDGotMNY
goユーザとRustユーザは言語に求める性質が違うから住み分けたほうがいいかも

goも少し触ったことがあるけど型の表現とエラー処理のサポートが物足りなくてRustに流れた
例えば標準パッケージioのReadWriteSeekerとかReadSeekCloserは自分の感覚だととても気持ち悪い
(多少文法が複雑でもRead + Write + Seekみたいに足し算で表現したい)

ただgoの文字型のruneは中二っぽくて好き

go2もpython3みたいに大変革になるのかな
※goは長いこと使ってないから情報が古いかもしれない
2022/12/18(日) 16:57:13.69ID:ciqdCn4z
とりあえずここはRustスレなのでGoの話はよそでやってくれ
223デフォルトの名無しさん
垢版 |
2022/12/18(日) 17:05:54.42ID:QlmiPWwX
>>219
たしかにRustよりGoのが速いベンチマークがあったな

>>220
この人5chがちら裏なの理解する論理的思考レベルがない

>>221
また中二っぽく可愛がってもらえよ
Go language part 5
https://mevius.5ch.net/test/read.cgi/tech/1645915400/390
390: デフォルトの名無しさん sage 2022/06/15(水) 05:30:30.87 ID:l/JMV/GH
goはそもそもエラーを扱う気概にかける言語だからどうしょうもない
毎回いちいちエラーコード返すのが作法とか何時の時代だよって感じだ
2022/12/18(日) 17:17:21.90ID:ZjeACeaz
>>147
理論は事実に立脚して組み立てられるものであって理論を組み立てればその通りに事実が動くわけじゃない。
理論の正しさは実際にそうなっているということによって証明しなければ想定の中でだけ正しくても意味ない。
実測は要る。 (少なくとも工学的思想では。)

想定のほうで Stroustrup が誤っているという主張は (その主張が妥当かどうかは別として) わかったが、
だからといって実測の重要性を貶めるのはよくないな。
225デフォルトの名無しさん
垢版 |
2022/12/18(日) 17:18:21.24ID:Kra2fWlF
>たしかにRustよりGoのが速いベンチマークがあったな
ボロ負けじゃね?しかもマルチスレッドがGoの独壇場じゃねぇか
誰か本気だせよ

次世代言語27 Nim Zig Pony Carbon Gleam
https://mevius.5ch.net/test/read.cgi/tech/1659660050/81
81: デフォルトの名無しさん(ワッチョイ 1e66-JEMU) sage 2022/09/28(水) 19:48:23.69 ID:Tun9Z/EC0
Nim追加
Language x10 x100 x200 x400 Memory Comment
--------------------------------------------------------------
Zig 0.118 1.073 2.113 4.203 3.2MB (std.HashMap, caller-hash by Context(Fnv1a_64))
Nim(clang) 0.211 1.171 2.245 4.372 4.2MB (CustomCountTable,LTO,ARC,caller-hash) New
C(gcc) 0.136 1.146 2.271 4.531 2.0MB (optimized.c,binary IO,jemalloc,O4,LTO)
C(clang/LLVM) 0.137 1.147 2.280 4.544 2.0MB (optimized.c,binary IO,jemalloc,O3,LTO)
Go 0.152 1.233 2.428 4.832 3.9MB (caller hash,better loop)
Go 0.164 1.346 2.654 5.279 3.8MB (caller hash)
Rust(LLVM) 0.154 1.425 2.838 5.674 2.6MB (optimized-customhashmap,O3,LTO,caller-hash)

以下、caller-hashではない
Go 0.085 0.366 0.693 1.319 61.9MB (parallel.go,reserve 65536/2)<--マルチスレッド
Nim(clang) 0.218 1.255 2.401 4.691 4.2MB (CustomCountTable,LTO,ARC) New
Zig 0.162 1.493 2.970 5.935 4.6MB (std.StringHashMap)
Go 0.182 1.563 3.063 6.097 3.8MB (customhash.go,reserve 65536)
Rust(LLVM) 0.214 1.725 3.396 6.715 3.5MB (optimized,fxhash,O3,LTO)
Nim(clang) 0.316 2.241 4.371 8.633 4.2MB (optimized.nim,std/CountTable,65536,LTO,ARC,FNV) New
Nim(clang) 0.332 2.387 4.652 9.152 4.2MB (optimized.nim,std/CountTable,65536,LTO,ARC) New
226デフォルトの名無しさん
垢版 |
2022/12/18(日) 17:31:20.56ID:Pcpr/u0k
>>224-225
はちみつオジが、仕様マウントerなのか、それともベンチ実測で天才プログラムを出すか、の流れキター
2022/12/18(日) 17:35:28.16ID:XqzxcH1y
ギャンブルって短期的には実力より運だから
実力主義やめないと短く簡潔にまとめることはできない
228デフォルトの名無しさん
垢版 |
2022/12/18(日) 17:40:11.04ID:UUQieuN3
>>211,227
えっ?
このポエオジ文って、はちみつオジが逃げ出す時の自演だったかよ!
229デフォルトの名無しさん
垢版 |
2022/12/18(日) 17:42:45.12ID:UUQieuN3
みんな知ってたの?
230デフォルトの名無しさん
垢版 |
2022/12/18(日) 17:43:32.51ID:UUQieuN3
これポエオジだけじゃ済まされないよ
2022/12/18(日) 18:10:21.20ID:nDGotMNY
>>223
Goが合わなかったからRust使ってるって言うてますやん
Go2出たらまたちょっと試すかも

このスレでGoの宣伝してる人は他の言語のスレでRustを宣伝してた人と同類なんだろうけど
goのどこを宣伝したいのかいまいち伝わってこない
並行処理が書きやすいって辺り?
「Rust→メモリ安全(ドン!)」みたいにもう少し分かりやすくしてくれないと(どのみち迷惑だけど…)
232デフォルトの名無しさん
垢版 |
2022/12/18(日) 18:22:19.21ID:Yrd3c8FW
>>228-230
いやショックスルー出来ん
2022/12/18(日) 18:29:47.39ID:NaS4unRh
>>231
ライブラリではなく言語ランタイムに統合されてるってのは大きいだろ
並行処理を意識してるだけで勝手に並列になるってのも強みの一つ
234デフォルトの名無しさん
垢版 |
2022/12/18(日) 18:29:54.58ID:7MHx9hHi
はちみつ味の複製ポエム美味しかった?
235デフォルトの名無しさん
垢版 |
2022/12/18(日) 18:34:43.02ID:5AOpzoDN
俺も知らなかった、裏切られた
androidの数字とか結局は誘導だったんだな
236デフォルトの名無しさん
垢版 |
2022/12/18(日) 18:36:05.72ID:5AOpzoDN
>>231
お前が迷惑
237デフォルトの名無しさん
垢版 |
2022/12/18(日) 18:36:46.79ID:5AOpzoDN
>>234
こいつも迷惑
238デフォルトの名無しさん
垢版 |
2022/12/18(日) 18:57:06.70ID:mhRLUjP0
>>228-230 なんと

はちみつが否定しているから完全スルーしてたけど内容に一理あるのか?
ID:7EPFyoxp
ID:u3ABxrNN
ID:/g1tYkuT
239デフォルトの名無しさん
垢版 |
2022/12/18(日) 19:12:48.17ID:tUNfGn/h
ID:Pt3aaRaQもはちみつだな
>>187 >>207
わけわからん
240デフォルトの名無しさん
垢版 |
2022/12/18(日) 19:43:19.34ID:WZSOTYm5
>>235 流れを見直したら、誘導なんて甘くない、印象操作とはつみつ効果でだましに掛かってる
愉快犯にもほどがある、だましの手口↓

Rust part17
https://mevius.5ch.net/test/read.cgi/tech/1665063793/855
855: デフォルトの名無しさん 2022/12/07(水) 00:21:26.68 ID:rpgrLTt2
AndroidもRustで書かれてたのかよ!
しかもRustの部分は脆弱性の報告0件って恐ろしいほどの安全性だな……
これマジでRust一強の時代がくるかも……
Ubuntuにデフォルトで入るまで待とうとのん気に構えてたけど急いで勉強しないと……!〆(.. )カリカリッ!!
https://japan.zdnet.com/article/35196972/

https://mevius.5ch.net/test/read.cgi/tech/1665063793/856
856: デフォルトの名無しさん sage 2022/12/07(水) 00:35:34.36 ID:21cwGaas
>>855
まじ?
というか20%がrustってえぐいな

https://mevius.5ch.net/test/read.cgi/tech/1665063793/864
864: はちみつ餃子 ◆8X2XSCHEME sage 2022/12/07(水) 09:19:24.95 ID:vqEtcxl0
どれがいい感じに発展するか事前にわかるもんではないからな。 狙いとは違う方向で結実することもあるし。
色々やっておく (それが出来る環境を用意する) とどれかは上手くいくし、上手くいかずに消えるものも多いってだけのこと。

https://mevius.5ch.net/test/read.cgi/tech/1665063793/866
866: デフォルトの名無しさん 2022/12/07(水) 10:39:11.42 ID:KNXoSnHr
>>855
結果だけみると凄まじい
システムプログラミング関係の置き換えは案外急速に進むかもしれんね
241デフォルトの名無しさん
垢版 |
2022/12/18(日) 19:46:06.62ID:WZSOTYm5
手間さいてTokeiかけてくれた人たちには感謝だわ
>>6-7,10
>>97-98
242デフォルトの名無しさん
垢版 |
2022/12/18(日) 19:58:10.93ID:xwF0kTSn
5chなんてそんなものだが完全にやり過ぎだな
「はちみつ効果」にやられてしまった
C++スレの住人は知ってるんだろうと思うと腹立つ
243デフォルトの名無しさん
垢版 |
2022/12/18(日) 20:01:35.84ID:xwF0kTSn
あと複おじ軍団なんて冗談だと思ってたけどちゃんと見ないとだめだな
244デフォルトの名無しさん
垢版 |
2022/12/18(日) 20:07:43.95ID:lRkKqYIY
はちみつ効果のネーミングセンスw
複おじ誕生の荒れたスレ進行をすっ飛ばさずに読んでだら防げたのだろうか
5chの洗礼にあった
245デフォルトの名無しさん
垢版 |
2022/12/18(日) 20:18:45.09ID:jhXHUDTW
そもそも次世代言語スレがひどいもんだった

Goスレの方は活性ゼロだけどそれが正常なんだろうな
246デフォルトの名無しさん
垢版 |
2022/12/18(日) 20:51:06.58ID:bqAtiN+g
逐一見てたわけじゃないからはちみつだったのには驚いたけど、
中立の立場で一応言っておくと、所有権の複製だったかの言葉尻を
からかってたのは旧Rust民の方なんだよ

何も知らない新Rust民が巻き込まれてやり返されたから5chの洗礼と
言っているけどね、根本は両成敗事案

今年の内にネタ晴らししたのが幸いくらいに考えてもバチは当たらない
2022/12/18(日) 20:56:49.03ID:fIbxuVQM
うっせえ説教垂れるなよ
こっちはもう消化したわ
2022/12/18(日) 21:12:36.39ID:4rarh3LD
じゃあ俺も年末大サービスで消化だぞ
あと旧Rust民は関心ないだろw
249デフォルトの名無しさん
垢版 |
2022/12/18(日) 21:22:16.01ID:Pt3aaRaQ
統一教会は日本で、ゆとりある教育を提唱しているが、韓国では全く逆のことを言ってるからな。
騙されるなよ。
250デフォルトの名無しさん
垢版 |
2022/12/18(日) 21:22:55.55ID:6rePUvep
>>246
うわっwww
見苦しいな
251デフォルトの名無しさん
垢版 |
2022/12/18(日) 21:31:24.71ID:ZUTK/5Jh
何を解決しようとしているのかさっぱりわからんが「はちみつ効果」だけ覚えておくし個人に遺恨とか無いから
そもそも行き当たりばったりだし舐めプは許さないから何も変わらんよ
2022/12/18(日) 21:36:30.85ID:sb+M7K5Y
誰がどうって属人的な話ばかりでさっぱりわからん
rustについて話すスレじゃないのここ
2022/12/18(日) 22:17:08.03ID:toPVlAES
複製おじがはちみつおじだったってマジ?
2022/12/18(日) 22:50:18.37ID:+UGBJzct
カラクリがどーのこーの言ってる子の自演でしょ
やっぱワッチョイないとダメだなもうこのスレ
・複オジ
・高校数学くん
・カラクリくん
こいつらが張り付いてる限りはもうだめ
2022/12/19(月) 00:21:25.03ID:gq5drqb5
>>252
人や団体もシステムの部品だと思ってる奴にとってはそういうのもRustの部品じゃないの知らんけど
2022/12/19(月) 01:14:57.15ID:c82ZRGsx
Rustは基本的に奴隷言語って理解できないと難しい
257デフォルトの名無しさん
垢版 |
2022/12/19(月) 16:48:50.89ID:p8X6WKzq
誰でも触れんやろうから奴隷言語として使うのは無理やろ
258デフォルトの名無しさん
垢版 |
2022/12/19(月) 19:27:21.72ID:/3mrhR4N
やっとアベノミクスの成果が出てきて物価が上がり始めた。
2022/12/19(月) 20:49:14.47ID:Y25ylOcd
RUSTとCOBOLだとどっち勉強したほうがいいですか?
260デフォルトの名無しさん
垢版 |
2022/12/19(月) 20:49:32.09ID:3Dxg7EeX
はちみつ味の複製ポエム来てるね
2022/12/19(月) 21:14:26.23ID:O5JD4G2Z
今のCOBOLerが死んでもCOBOLは絶滅せず生き残ってるよ
2022/12/19(月) 21:37:45.89ID:WKEFaS7w
COBOLは確実に先細りだけど需要低下より人材供給量低下の方が激しいことに賭けてそれが当たれば最低限食ってはいけるだろう
ただしどれだけ供給減っても低賃金は確定している
263デフォルトの名無しさん
垢版 |
2022/12/21(水) 16:15:01.64ID:OJiWvVZL
国内 https://i.imgur.com/U7VqJpS.png
https://news.mynavi.jp/techplus/article/20221221-2542721/

海外 https://i.imgur.com/xwnzvYQ.png
264デフォルトの名無しさん
垢版 |
2022/12/21(水) 17:21:59.03ID:oXzOzUvS
>>231「Rust→メモリ安全(ドン!)」
からの
>>263 Rust圏外
イキリ仕様マウントer、ふかし過ぎたな、負け惜しみポエム早う
2022/12/21(水) 17:27:51.00ID:1n5bm7tL
23日を目の前にしてこんな珍活やるなんて
こいつらほんとに映画完成を祝う気があるのか
266デフォルトの名無しさん
垢版 |
2022/12/21(水) 17:46:49.38ID:EOCA/uvt
イキリ仕様マウントer、負け惜しみポエム早う
2022/12/21(水) 18:15:09.80ID:wmvfYabF
正直、今のRustよりZig0.10.0のが圧倒的に使いやすい😭
2022/12/21(水) 19:19:58.85ID:aAXY15Bb
いえーい

lowerbound
let mut id: usize = vec.binary_search_by(|it| if it > &i { Ordering::Greater } else { Ordering::Less }).unwrap_or_else(|it| it);
2022/12/21(水) 20:11:47.52ID:AHrCNsg8
Rustの企業ニーズがまだまだ圏外なことなんてRust使いなら分かりきってることなのにそんなマウント取った感じで語られても
2022/12/21(水) 20:20:41.38ID:9RknxW+Q
流行る前から弄ってる方が古参顔できていいじゃんw
2022/12/21(水) 20:43:44.99ID:oRaDKFJ/
出た
汚コード
2022/12/21(水) 21:32:32.83ID:a0hx5ilE
流行る前に終息しなきゃいいけど
2022/12/21(水) 22:46:24.98ID:vhchdsG+
>>267
zigはcomptimeでマクロを撲滅したのが佳き
rustと同じくnull安全だし
2022/12/21(水) 22:50:41.40ID:QTiiGNSd
zigよりnimだろ
2022/12/22(木) 00:10:53.35ID:OAZ8emVI
生産者ニーズがほしいか
2022/12/22(木) 12:11:15.80ID:K+t8JTYS
nimよりzig。
2022/12/22(木) 12:46:57.09ID:NYaLZdVY
パーフェクトRust、くるーーーーーーーーー

パーフェクトRust
古川 正寿フルカワ マサトシ(著/文)
発行:技術評論社
B5変型判 608ページ
定価 4,200円+税
ISBN978-4-297-13322-1
2022/12/22(木) 13:17:00.84ID:zqq5OCui
発売日は2023/2/22か
2022/12/22(木) 13:18:00.24ID:zqq5OCui
Rust vs Nim vs Zig
280デフォルトの名無しさん
垢版 |
2022/12/22(木) 19:24:14.11ID:AE7wyiWu
>>277
宣伝乙。
5chでイキリRustしてたのはお前だったか。
2022/12/22(木) 22:55:40.45ID:xSOPdXd0
カニの本以上の内容なんだろうな?
2022/12/23(金) 00:07:44.29ID:TMc6xUzx
パーフェクトに知るために608ページも知らなくちゃいけないなんて、、前評判なのか何なのか知らんけど
まだ読んでもない・読まれても無い・好評にもなってない本の宣伝とか、ガッカリだぜ著者
2022/12/23(金) 00:44:55.26ID:pUxsu+9d
ぎひょうねえ・・・
2022/12/23(金) 00:50:18.78ID:9qxa1bzh
>>282
まずは読まれないと良い評判も悪い評判もつかないんだぞ。
まずは存在を知らないと読まれないんだぞ。
285デフォルトの名無しさん
垢版 |
2022/12/23(金) 00:54:24.95ID:gJykqhV0
「ちょっと宣伝させて下さい」ペコリ
としとけばいいものを
286デフォルトの名無しさん
垢版 |
2022/12/23(金) 00:55:50.80ID:fmg0TWli
>>284
vineで配りまくってもらえよ
2022/12/23(金) 09:05:10.46ID:l1RHMNlR
パーフェクト奴隷
288デフォルトの名無しさん
垢版 |
2022/12/23(金) 10:07:58.89ID:VNmJewFl
技評でパーフェクトシリーズなら
いろんな雑誌や書籍に宣伝載るだろ
あの日本語訳のような酷い出来じゃなければ
他言語から来たやつが日本語で読める入門書としてそれなりに読まれるんじゃねーの

でも発売2ヶ月以上前からこんなところで宣伝するようじゃ中身には全く期待できない
289デフォルトの名無しさん
垢版 |
2022/12/23(金) 19:15:59.17ID:gwgT2Sfv
>>282
プログラミング言語C++第4版は1000ページ超えてたぞ。
あれぐらいの名著ならいいんだけど果たして、、、
290デフォルトの名無しさん
垢版 |
2022/12/23(金) 19:18:50.67ID:moKX1GWs
技術評論社って色々問題の多い出版社だろ。
2022/12/23(金) 19:28:50.15ID:gwhrrj9D
今どきは、ネットでどんどんぐぐって掘り下げてく方が効率いいだろ
292デフォルトの名無しさん
垢版 |
2022/12/23(金) 19:30:32.77ID:moKX1GWs
モルフィーワン無関係のふり事件とかまだ忘れてへんぞ。
293デフォルトの名無しさん
垢版 |
2022/12/23(金) 19:31:31.66ID:moKX1GWs
へ、弊社には関係ございません・・・
・・・って、お前、巻末にしっかり申込書載せてただろうが。
2022/12/23(金) 21:09:19.50ID:E/cyQexS
技術評論社のネガキャンしてるのはどこの出版社だろうねぇ
2022/12/23(金) 21:30:24.84ID:uZSH+bjc
ちゃんとした本で勉強せずネットだけで勉強したプログラマーの大半が役立たずなのは事実
2022/12/23(金) 21:34:31.17ID:gwhrrj9D
調べたい事があったら、内容も見ずにそれらしい本を次々買うのか
297デフォルトの名無しさん
垢版 |
2022/12/23(金) 21:47:46.65ID:moKX1GWs
技術評論社って時点でちゃんとした本とは言えない。
分かった気にさせる系ブック。
2022/12/23(金) 22:05:18.90ID:Ozi6ulx9
>>296
たった4千ちょっとじゃん
論文だとうん十万で企業さん買うことあるし
299デフォルトの名無しさん
垢版 |
2022/12/23(金) 22:45:44.65ID:moKX1GWs
技術評論所って時点で却下だ。
マイナスにしかならん。
関わったら負け。
300デフォルトの名無しさん
垢版 |
2022/12/23(金) 23:29:21.75ID:E4YJ/cNu
会社の質は知らんが技術書の質としたら
日本語書籍のなかじゃ技評はまともな方だよ
Web+DBのシリーズなんかはそこそこ良い本がそこそこある

パーフェクトシリーズは3~4冊読んだことあるがどれも可もなく不可もなくって感じ
2022/12/24(土) 00:21:57.15ID:dKwBAK5O
予約販売するなら目次くらいは見せてほしいです(アマゾンの紹介文は校正が甘くてちょっと心配になる)
シリーズ物だと本棚に飾るために買う人もいるのかな
302デフォルトの名無しさん
垢版 |
2022/12/24(土) 00:29:31.41ID:oaf6ZoeK
アマゾンは何年か前から目次データを扱わないことにしたはず
303デフォルトの名無しさん
垢版 |
2022/12/24(土) 00:39:47.50ID:Ff8LcExQ
入門ならオライリー本でいいよね。
パーフェクトっつうくらいだからそれ以上の内容だろうな?
2022/12/24(土) 01:19:22.49ID:neNV1E/a
しゅうわとぎひょうとしょうえいしゃ!
だめなやつさんじゅうし!!
305デフォルトの名無しさん
垢版 |
2022/12/24(土) 07:46:20.45ID:prQ1joB9
5ch荒らしてステマは許されんだろ。
306デフォルトの名無しさん
垢版 |
2022/12/24(土) 07:51:37.78ID:prQ1joB9
ギヒョーの本なんて嘘しか書いてないだろ。
読めば遠回りになる。
2022/12/24(土) 09:31:57.45ID:Pn9iAY2O
Rustをやる前にCをやれ、pthreadをやれ
この辺の経験がないとRustの旨味はわからないし、経験があればRustは本じゃなくてbook等で十分習得できる
308デフォルトの名無しさん
垢版 |
2022/12/24(土) 10:13:24.51ID:0hzd8iER
>>303
パーフェクトは言語要素を薄く広く一通り網羅してますよくらいの意味
2022/12/24(土) 10:20:47.24ID:SV+pNSBA
汚コードてんこ盛り言語
310デフォルトの名無しさん
垢版 |
2022/12/24(土) 10:22:04.57ID:qdGW0l+q
今のところ入門者向けはオライリー本
脱初級者向けにはRust for Rustaceans
この2冊がド定番
The Bookはオライリー本読んだ後の復習用
311デフォルトの名無しさん
垢版 |
2022/12/24(土) 10:52:29.94ID:1g44UEW4
amazon見てみたら”あの日本語訳”もあのまま出版されてて笑った

校正とかしなくても出版されるんだな
2022/12/24(土) 10:56:45.09ID:SV+pNSBA
コード解ってないバカが翻訳してると致命的なんよね
2022/12/24(土) 12:10:44.03ID:A36YCrnK
オライリー本って
カニの絵のある、プログラミングRust第2版
ってやつでいいよね?
買ったけどこれで入門者向けなのか。難しい
314デフォルトの名無しさん
垢版 |
2022/12/24(土) 12:20:09.96ID:prQ1joB9
でも日本には四季があるから。
315デフォルトの名無しさん
垢版 |
2022/12/24(土) 12:28:56.16ID:6dgnpXDz
>>313
それだよ
オライリーから出てるRustの日本語書籍は今のところそれの第1版と第2版しかない
入門者向けってのは他言語経験者がRust入門時に1冊目として読むべき本という意味
316デフォルトの名無しさん
垢版 |
2022/12/24(土) 12:34:52.75ID:prQ1joB9
5ch荒らしてステマする出版社は滅びてしまえ。
2022/12/24(土) 12:40:30.63ID:Uno+rmkY
発売前から評価するアホどもw
2022/12/24(土) 12:46:55.17ID:6lvItlMI
>>313
入門者向けっていうか言語機能を一通り知りたい人向けかな
簡単なアプリを作りながら徐々に学びたいみたいなタイプの人には向いてないとは思う
319デフォルトの名無しさん
垢版 |
2022/12/24(土) 16:38:18.15ID:vikvNjdz
Comprehensive Rust (by Android team)
https://google.github.io/comprehensive-rust/

どの項目もめちゃ簡潔な説明しかないけど必要な項目をよくおさえてるので短い時間でRustをざっくり把握したい人向き
320デフォルトの名無しさん
垢版 |
2022/12/24(土) 17:45:07.76ID:prQ1joB9
>>317
発売前から星5つけてるのは技術評論社と断定して良いだろ。
2022/12/24(土) 18:18:22.75ID:ZwVl66jy
どこに星5のレビューがあるんだよw
322デフォルトの名無しさん
垢版 |
2022/12/24(土) 18:19:17.78ID:prQ1joB9
文句言うな、クソ出版社。
2022/12/24(土) 18:28:47.02ID:mI8Hy1wk
ID:prQ1joB9
なんだこのガイジ
324デフォルトの名無しさん
垢版 |
2022/12/24(土) 18:48:43.75ID:prQ1joB9
あ〜クソ出版社が怒った〜。
2022/12/24(土) 20:22:07.06ID:kSkjk9Mz
オライリーの並列処理の本買ったぞ
頑張って読むか~
326デフォルトの名無しさん
垢版 |
2022/12/24(土) 20:24:04.17ID:prQ1joB9
オライリーはステマしないから良いですね。
技術評論社は駄目ですね。
2022/12/24(土) 20:29:57.07ID:sDckaCi+
>>325
ふぁいとー
328デフォルトの名無しさん
垢版 |
2022/12/24(土) 21:44:01.09ID:TpRUM52R
>>318
>簡単なアプリを作りながら徐々に学びたいみたいなタイプの人には向いてないとは思う
こういうタイプに向いてるRust入門1冊目向き本ある?
どれも1冊目を標榜してても現実には2冊目向きじゃない?
329デフォルトの名無しさん
垢版 |
2022/12/24(土) 21:52:02.71ID:TpRUM52R
オライリー本かThe Book以外で1冊目向きでそこそこだと思ったのは「コンセプトから理解するRust」ってやつだな

細かい表現で正確性に欠けてたり不必要に他言語の解説がされてたりダメなところもあるけど
Rustを理解するために必要な概念がわりかし平易に説明されてるのでオライリー本のハードルが高いと思うようなら読んでみてもいいんじゃねって感じた
330デフォルトの名無しさん
垢版 |
2022/12/24(土) 21:54:15.47ID:TpRUM52R
技評のステマじゃないぞw
331デフォルトの名無しさん
垢版 |
2022/12/24(土) 21:57:51.85ID:prQ1joB9
アウト。
完全に技評。
2022/12/25(日) 14:34:04.39ID:2ZIPKlnk
技評本にみんなで星1つけてここは丸く収めよう
2022/12/25(日) 16:35:37.64ID:nIXk07OO
たぶん買わないからつける星がない
プラスに働くかは分からないけど多少はRustの宣伝になるだろうし
よくわかってない意思決定チームが引っ掛かってRust採用するかもしれない
2022/12/25(日) 17:21:36.73ID:1I2bckMn
zigがバージョン1.0になってrustと比較して、rustが優れてるようであれば、c++からrustに移行するかな
335デフォルトの名無しさん
垢版 |
2022/12/25(日) 17:38:15.56ID:sHsaZ4HA
>>333
立ち読みして星つければいいよ
2022/12/25(日) 17:47:21.28ID:iNG6c6o4
パーフェクトRustの著者の古川正寿でググったけどRustの実績皆無で草
337デフォルトの名無しさん
垢版 |
2022/12/25(日) 19:00:59.96ID:pw/2PAh6
「読んでいませんがステマ反対の意味で星1です」って書いておけば良いんじゃないの?
2022/12/25(日) 19:12:34.85ID:o7lkzREn
>>336
なんかよくわからないJava民やんけ
2022/12/25(日) 19:49:45.00ID:N05QSaCp
java使いのrust本なんて見る前から星マイナス100だってわかるわ
340デフォルトの名無しさん
垢版 |
2022/12/25(日) 20:21:44.92ID:pw/2PAh6
自分で「パーフェクト」などという王冠を載せてしまう所がなんとも。
2022/12/25(日) 20:22:39.42ID:kpfdef+7
在庫がない物を売ったり現金がないのに買ったり
データのない感想を言ったりまだ法的根拠がない悪と戦ったりする現象
342デフォルトの名無しさん
垢版 |
2022/12/25(日) 20:36:11.79ID:/ZdbLfzY
それよりなんか、日本でRustの資格を作ろうとしてるやつがいるっぽいな
343デフォルトの名無しさん
垢版 |
2022/12/25(日) 20:37:41.40ID:pw/2PAh6
資格を持っていないRust使いはモグリにされるんだろな。
すぐ獲っとけよお前ら。
2022/12/25(日) 20:49:53.99ID:Wqv6EEWh
本のタイトルってほとんど編集が決めない?
相談があるケースがほとんどだけど全然違うタイトルになるよ。
345デフォルトの名無しさん
垢版 |
2022/12/25(日) 20:51:21.68ID:pw/2PAh6
ステマして申し訳ありませんと言えない病気にかかってるようだな。
2022/12/25(日) 20:54:15.38ID:jSgNZxGu
>>344
自分も経験あるけど「これはちょっと大げさに言い過ぎで恥ずかしい」
と思っても、こっちの方が売れるからって言われて押し切られることあるよな
2022/12/25(日) 20:56:00.58ID:Wqv6EEWh
>>346
まぁ…そうおっしゃって頂けるなら…お任せします、みたいになるよね
2022/12/25(日) 21:00:45.00ID:jSgNZxGu
エンジニアとしては正確に命名したくなっちゃうんだけど
そうすると潜在顧客にリーチしないって言われる
なんでパーフェクトも「もうRust本も結構出てるんで、決定版的な感じで差別化しないと売れませんよ」って編集がゴリ押ししたのかな?とか
2022/12/25(日) 21:16:29.59ID:mTma8hKu
普通にパーフェクトシリーズってだけだろ... 頭大丈夫か?
350デフォルトの名無しさん
垢版 |
2022/12/25(日) 21:25:07.80ID:pw/2PAh6
妙なJava使いがパーフェクトRustかよ。
馬鹿にしすぎ。
2022/12/25(日) 21:27:40.12ID:eI49JF9s
Rustはjavaと同じ道を辿るってことだろ
352デフォルトの名無しさん
垢版 |
2022/12/25(日) 21:41:58.80ID:h0SIPUgP
>>341
先物取引なんだろjk
353デフォルトの名無しさん
垢版 |
2022/12/25(日) 21:46:53.94ID:B7L0WrjQ
オライリーからもC/C++やったことないぜって人のRust本出てるよ
他の本でそこそこ有名な著者ではあるけど
354デフォルトの名無しさん
垢版 |
2022/12/25(日) 21:49:05.53ID:kVcEzED5
出版社で言えばオームのRust本も残念なやつだったぞ
355デフォルトの名無しさん
垢版 |
2022/12/25(日) 21:49:22.53ID:pw/2PAh6
技術評論社のステマを無効化する技術が必要。
2022/12/25(日) 22:03:17.68ID:mTma8hKu
gihyo に恨みを持つ人物... あっ

ttps://blog.goo.ne.jp/ikunya/e/95ff46d785fa70c9a8f69a7aa9eb7508
357デフォルトの名無しさん
垢版 |
2022/12/25(日) 22:06:38.12ID:SBnv8ChZ
2022年、平均年収が高かったプログラミング言語
https://egg.5ch.net/test/read.cgi/bizplus/1671604566/
358デフォルトの名無しさん
垢版 |
2022/12/25(日) 22:41:18.06ID:Rzpsr3wg
>>356
うわーこれ知らんかったけど両方ともめちゃくちゃ闇が深いな

あわしろあわしろ言ってたのはコレだったのか
嫌な世界だな
359デフォルトの名無しさん
垢版 |
2022/12/25(日) 22:48:32.49ID:pw/2PAh6
これは凄いな。
思った以上に闇が深い。
2022/12/25(日) 23:00:00.49ID:x8WEaeHo
オルタ3期はありますん
361デフォルトの名無しさん
垢版 |
2022/12/25(日) 23:13:30.20ID:5xuoXStY
これ見たら萎えた
https://togetter.com/li/1084225

Twitterってもう公共の場なんだよね
相手がどうあれそこでこんなやり取りしてたらそりゃ批判されて当然
CoCとか語る資格ないわ
362デフォルトの名無しさん
垢版 |
2022/12/25(日) 23:19:28.74ID:pw/2PAh6
こんなことがあったのか。
凄いなこれ。
363デフォルトの名無しさん
垢版 |
2022/12/25(日) 23:20:42.36ID:pw/2PAh6
外から見るとリンチの記録だけどな。
364デフォルトの名無しさん
垢版 |
2022/12/25(日) 23:48:51.83ID:pw/2PAh6
今日は技術評論社の新たな闇が見れて勉強になったわ。

ダメな出版社は何やってもダメだな。
2022/12/26(月) 00:35:46.39ID:fnwdxQHw
まあ「やり方が陰湿だなぁ」とは思いながら見てた
366デフォルトの名無しさん
垢版 |
2022/12/26(月) 00:39:53.37ID:HZUapexB
>>364
いやいやどう考えても君が技評に恨みをもつ本人やろ
少なくともこのスレでは
2022/12/26(月) 00:54:15.67ID:G03MQQnq
どう見てもそうだよね。
2022/12/26(月) 01:09:38.31ID:/akYDW0k
このスレ、この板で圧倒的に勢いあるけど
ひとりでスレチな話してるんだな
2022/12/26(月) 01:41:08.19ID:ItPLY/7I
Reddit行くわ
2022/12/26(月) 17:03:05.95ID:zTKHQ885
linux-6.2-rc1に新規に追加されたファイル
rust/build_error.rs
rust/kernel/build_assert.rs
rust/kernel/static_assert.rs
rust/kernel/std_vendor.rs
rust/kernel/types.rs
rust/macros/concat_idents.rs
rust/macros/vtable.rs
samples/rust/rust_print.rs
2022/12/26(月) 17:28:23.14ID:tcXf7L45
志賀慶一と岡部健戦わせたらどうなるん?
粘着力で毛の壁が上回ってる気がするけど
372デフォルトの名無しさん
垢版 |
2022/12/26(月) 18:40:32.16ID:RCive2Hf
どうでもいいLinux/リーナス関連ゴシップを書き散らかすのもあのキモチ悪いコミュニティの人かと思うと汚コード以上に嫌悪感を感じるな
373デフォルトの名無しさん
垢版 |
2022/12/26(月) 18:47:07.99ID:vjeyt+Nr
またあのバカが荒らしてるのか
374デフォルトの名無しさん
垢版 |
2022/12/26(月) 18:52:30.06ID:vjeyt+Nr
警察に通報したほうが良いんじゃねえか?
2022/12/26(月) 19:43:08.99ID:tcXf7L45
警察よりも病院よ
お薬飲むと楽になるよきっと
2022/12/26(月) 19:48:11.94ID:daM/Wsvl
>>370
だいぶ表面層から書き換えてるのな
377デフォルトの名無しさん
垢版 |
2022/12/26(月) 20:21:49.23ID:vjeyt+Nr
あほだコイツ
2022/12/26(月) 20:22:51.69ID:Zy6+VO+5
>>370
rustに対してネガティブな内容だったからここで内容は書かないが、ちょうど今日これの開発秘話を聞いてしまった
379デフォルトの名無しさん
垢版 |
2022/12/26(月) 21:26:58.76ID:Ju6RL4oa
ほんと気持ち悪いな
どっちも気持ち悪い
2022/12/26(月) 21:28:16.12ID:lUt/rtkO
>>378
うそくさ
381デフォルトの名無しさん
垢版 |
2022/12/26(月) 21:36:03.30ID:waGE7o7X
400スレ近く消費してるのに読む価値のあるレスが1~2個しかない
あとはアンチとステマと誤訳とクローン蜂蜜
2022/12/26(月) 21:41:11.78ID:irSfveUt
ここは雑談スレ二次会だからね
2022/12/26(月) 21:41:41.49ID:DzUwgwSZ
はちみつって偽物いるの?
384デフォルトの名無しさん
垢版 |
2022/12/26(月) 22:12:16.84ID:vjeyt+Nr
>>380
その御方はUbuntu JPの中の人だぞ
頭が高い
2022/12/26(月) 22:14:36.02ID:S3tY6xj2
>>381
その価値というのが量的だから
ソースコード読めない人を参加させるためにわざと定量化してるようなもの
2022/12/26(月) 23:33:55.88ID:OY2gVA5w
>>384
意味不明なレスつけるなよ
ゴミ
2022/12/27(火) 20:38:32.04ID:AOBUz6/T
汚コーダ増し増し言語
388デフォルトの名無しさん
垢版 |
2022/12/27(火) 21:34:50.26ID:Q5qxYeje
asserts、print、types、identという文字面だけで、ム板人は中身が透視できる。
したがって、開発秘話などと言ってるのはム板人ではない。
2022/12/28(水) 01:11:48.42ID:EGILmpLu
Dioxusいいね
https://www.reddit.com/r/rust/comments/zvo4js/media_just_merged_instant_hotreload_support_for/
2022/12/28(水) 20:54:07.25ID:8hE8evYw
rustは標準ライブラリが貧弱ってところが唯一引っかかるな
他は今のところ文句ないんだが
goとrustだとどっちのほうが標準ライブラリが充実してるのかな
2022/12/28(水) 23:35:00.22ID:cVu4p4ix
ライブラリの充実感を出すにはLLVMなコンパイラなんかよりも
C/C++へのトランスレータかインタプリタ作った方が直感的だろうね
わかりやすさを無視した実質ではコンパイラが正しいんだろうけど
392デフォルトの名無しさん
垢版 |
2022/12/29(木) 01:00:18.88ID:Fxo/xNYr
尻滅のC++er
2022/12/29(木) 06:48:15.12ID:2DAxWoSl
>>390
Goに決まってるだろ
libcにすら依存してないんだから
394デフォルトの名無しさん
垢版 |
2022/12/29(木) 13:50:41.11ID:47DoSGRg
技術評論社がスレを潰したな。
2022/12/29(木) 14:03:52.70ID:c0dU1ulx
JavaのAWTが標準ライブラリを流行らせた
AWTを潰した奴が標準ライブラリを潰した
2022/12/29(木) 14:52:46.32ID:4CaCC41/
またスレ潰れたのか
2022/12/29(木) 20:24:07.63ID:ZwutplTz
またスレが一つ死んだ。
行こう、ここもじきクソレスに沈む。
2022/12/29(木) 22:22:48.42ID:0IFwEq6w
最近来たばっかだけどなんで潰れたんだよw
2022/12/30(金) 11:10:38.66ID:l10vdbnH
くだらないことを長文で書き続けるやつが湧くとスレが死ぬ
2022/12/30(金) 14:17:15.08ID:OHNOUhaD
板の他スレのようにワッチョイがついてないせいだろ
このスレはワッチョイついてないんだから荒らしくらいガマンしなさい
2022/12/30(金) 14:24:56.68ID:OPrluG8u
Rustで安心安全な掲示板って作れないの?
2022/12/30(金) 15:34:09.37ID:9s3B+84f
>>401
きみが考える安心安全を実現する方法を晒してくれ
多分Rustで実現できるなら他の言語でもできると思うけど
2022/12/30(金) 15:34:42.26ID:IfhsFpKo
>>401
掲示板ってどういうものなのか知らなさそうな質問で草
2022/12/30(金) 15:40:26.47ID:BDIRIxUq
ルビキチだぞ
2022/12/30(金) 15:44:53.39ID:X8XU9Tq3
>>390
そもそも低レイヤー言語でプログラムするのに、標準ライブラリに頼りまくるのが間違いだわ。
2022/12/30(金) 15:56:55.67ID:q+i6e/HN
>>390
充実したリポジトリがあって cargo.toml に一行足すだけでライブラリが使えるんだから
そのライブラリが標準ライブラリかどうかなんてどうでもいいだろ。

標準に入れたくなるほど有用なら標準に入ろうと入るまいとそれなりに保守されることが期待できるし。
2022/12/30(金) 16:09:16.18ID:6OjX9rIH
標準ライブラリが充実してるということはそれだけ本体の運営者に負荷がかかるということだからね
408デフォルトの名無しさん
垢版 |
2022/12/30(金) 16:21:39.09ID:ZhOqacm+
技術評論社がステマに来るとスレが死ぬのでは。
2022/12/30(金) 16:33:03.00ID:2tr5E+qB
let mut vec: Vec<usize>で
vec.iter_mut().map(|x| *x += 1)
みたいなことはできないの?

こんなふうにしないとだめ?
let mut vec:Vec<usize> = vec.iter_mut().map(|x| x + 1).collect();
2022/12/30(金) 17:08:17.01ID:G+QOCOIZ
会社でやってるとサードパーティのライブラリはライセンスだったり許可もらったりするのが面倒
2022/12/30(金) 17:58:17.74ID:DPUEZfMS
マトモな翻訳してくれれば誰も文句云わんのだよ
2022/12/30(金) 18:19:29.77ID:fRI4wSFq
クレクレ君…w
2022/12/30(金) 18:21:35.53ID:IZzoTqaS
>>409
キミのやりたいことは多分こう
let mut v: Vec<usize> = vec!(1,2,3);
v.iter_mut().for_each(|x| *x += 1);
println!("{:?}", v); // [2, 3, 4]
2022/12/30(金) 18:40:35.07ID:IBpSTujk
>>400
出たよワッチョイ自治厨
こいつが来るとスレが終わる
2022/12/30(金) 18:44:56.94ID:tjQ0cwgL
おまえだけワッチョイスレたてて移住すりゃいいだろ
考えを押し付けるなカス
2022/12/30(金) 19:38:38.38ID:QNlIwCU4
確かにidって中途半端だよなワッチョイと言わずip表示させようぜ
2022/12/30(金) 19:44:01.82ID:cZGr+8cE
C++は経験あるけどRustはまだ触ったことない
RustってC++より簡単?
言語仕様の超複雑なC++よりは使いやすそうに見える
2022/12/30(金) 19:49:17.66ID:kWQcSfr1
>>416
むしろidを消していいかと
2022/12/30(金) 19:55:03.48ID:0DTVZGRS
プログラミング言語 Rust 4【ワッチョイ】
https://mevius.5ch.net/test/read.cgi/tech/1514107621/
Rust part6
https://mevius.5ch.net/test/read.cgi/tech/1532697692/

どっちを復活させるべきか
2022/12/30(金) 20:01:01.43ID:dkO45neb
2度も失敗してるんか…
あきらメロン
421デフォルトの名無しさん
垢版 |
2022/12/30(金) 20:09:39.66ID:ZhOqacm+
ステルスマーケティングに関する検討会 報告書
https://www.caa.go.jp/policies/policy/representation/meeting_materials/review_meeting_005/assets/representation_cms216_221228_03.pdf

覚悟しとけ。
422デフォルトの名無しさん
垢版 |
2022/12/30(金) 21:02:28.22ID:d34Nf27q
汚コーダー来てるね
2022/12/30(金) 21:27:26.92ID:2tr5E+qB
>>413
まじか
でキタ━━━━(゚∀゚)━━━━!!
2022/12/30(金) 21:45:21.02ID:2tr5E+qB
>>413
本当にありがとう
for_eachしらんかった

let mut vec: Vec<Vec<usize>> = vec![vec![1, 2, 3]; 3];
vec.iter_mut().for_each(|x| x.iter_mut().for_each(|x| *x += 1));

for i in vec.iter() {
 println!("{:?}", i);
}

//[2, 3, 4]
//[2, 3, 4]
//[2, 3, 4]


実現できて助かるヽ(´ー`)ノ
2022/12/30(金) 21:50:10.68ID:IZzoTqaS
よかったね(*´∀`*)
426デフォルトの名無しさん
垢版 |
2022/12/30(金) 23:47:28.62ID:uMR1T0wQ
>>424
forループじゃなくイテレータのメソッドつかいたいならinto_iterでmap
for_eachでmutateするのはbad practiceなのでやめようね
2022/12/31(土) 00:22:06.01ID:HrwxNmcH
>>417
c++より簡単と言えば簡単。
言語仕様をちゃんと確かめようとするとc++みたいに生の書き方ができない分、大変かもね。
2022/12/31(土) 04:42:28.23ID:kgmqtCAB
最近BTreeMap使いすぎて困る
2分探索必要なとき脳死で使っちゃう
なお重複
2022/12/31(土) 07:30:55.80ID:oTbNnype
>>424
どういたしまして
2022/12/31(土) 14:54:23.95ID:jR2iu01M
食いチン棒!万歳
チンコーマンの提供でお送りします
2022/12/31(土) 15:23:23.48ID:/2nidRAX
>>430
面白いと思ったの?
2022/12/31(土) 15:29:57.82ID:/DZ35uia
俺は大笑いしたけどな
433デフォルトの名無しさん
垢版 |
2022/12/31(土) 17:14:26.57ID:TeLjBPNY
面白いかはともかく、スレのレベルには合ってる。
2022/12/31(土) 18:36:57.94ID:iB0yGVB2
なんでお前らRustなんてやってるの?C#の.NETが圧倒的に使いやすいのに
お前ら損してるよ
2022/12/31(土) 18:53:15.25ID:oTbNnype
>>434
気になってしょうがないんだなw
2022/12/31(土) 18:54:52.47ID:a9jYC/Xy
RustやってるヤツなんてC#使った事ないわけないだろ
2022/12/31(土) 19:38:51.94ID:YTLEGwqL
「なんでRustなんて使うの?」という考えの人がわざわざRustスレに書き込もうと思うのが謎
2022/12/31(土) 19:45:14.47ID:zpFQdxC+
Rust'erはC++とJava or C# は扱えるイメージ
2022/12/31(土) 19:50:31.27ID:a9jYC/Xy
Rusterは大体過去にD言語とか一回はかじってそう
2022/12/31(土) 21:08:24.99ID:UJsKk56g
>>437
自分がやってきたことに疑念が生じてるんだよ
ひょっとしてC#なんかよりRustやったほうがいいんじゃないか?って
そして言ってもらいたんだよ
C#なんてやめちまえって
どこにでもいるだろ?迷ったとき背中押してもらいにくるやつw
441デフォルトの名無しさん
垢版 |
2022/12/31(土) 21:10:04.00ID:TeLjBPNY
キラーアプリの前にセミナーや資格が出てくるのは、売人の世界。
役に立たんよ。
2022/12/31(土) 21:26:12.45ID:YncayN1e
> どこにでもいるだろ?迷ったとき背中押してもらいにくるやつw
みたいなこと言う奴が
> お前ら損してるよ
なんて言うわけないだろ、バカすぎるw
443デフォルトの名無しさん
垢版 |
2022/12/31(土) 21:35:29.14ID:TeLjBPNY
誰も使っていないのに、みんながお勧めする言語。
発売前なのに、みんなが絶賛する書籍。

ダメでしょコレ。
444デフォルトの名無しさん
垢版 |
2022/12/31(土) 21:37:02.33ID:TeLjBPNY
ステマ界のエース。
2022/12/31(土) 21:57:26.74ID:8bI5KTFW
>>426
なんでbadなん?
2022/12/31(土) 22:36:39.86ID:jxqT3Fc7
汚コード増し増し言語
2022/12/31(土) 23:39:15.81ID:OoaMek77
>>426
ミーには前者のがbadに見えるザンス
2022/12/31(土) 23:58:30.86ID:YFdr1sr3
スパゲッティーだけど安全安心だよ
2023/01/01(日) 11:45:43.47ID:BvdJus9d
今のご時世、Polyglotなプログラマが求められてるというか、常識みたいな扱いになってるね
2023/01/01(日) 11:48:47.94ID:BKjRVrWQ
C#ってC++の代替にはなるけどCの代替にはならない
RustはそのCの代替と成りうる言語でなので
恐らく逆にC++やC#の代替にはあんまり向かないんじゃないかと思う
2023/01/01(日) 13:38:52.32ID:To8Y0Nm/
Rust++
452デフォルトの名無しさん
垢版 |
2023/01/01(日) 13:40:21.19ID:Vy1QsnRD
>>449
そりゃそうやろ
2023/01/01(日) 14:11:05.78ID:wNlikats
バックエンドデベロッパならlibcは理解してないといけないからcは必修よね
2023/01/01(日) 14:21:37.43ID:ps54Dm7d
C#がC++の代替えになる?
2023/01/01(日) 14:41:50.37ID:aSlqk9oO
C#はRuntime実行前提の言語だから組み込み開発に向いてない
2023/01/01(日) 14:48:36.24ID:VT3ij45D
とはいえ、WinformやWPF使わないならネイティブコンパイルできるけどね。
.netランタイムない環境でも普通に実行ファイルあるいはネイティブdllにみたてたものして動作する
2023/01/01(日) 14:48:50.67ID:aOdp45l9
C++って保守と競プロ以外どこで使われてんの?
2023/01/01(日) 14:52:58.20ID:58kS2oWV
>>457
Rustと同じところに使われてるぞ
そんなことも知らないの?
2023/01/01(日) 14:54:25.49ID:XWe0+nEQ
>>457
それrustがどこに使われてるの?と聞いてるのと同じじゃんかww
2023/01/01(日) 14:58:29.83ID:+lXIx03F
c#ってフロント組むための言語だよね?rustやc#とは用途が違うのでとっとと出てってください
2023/01/01(日) 14:59:02.35ID:+lXIx03F
間違えたrustとc/cpp
462デフォルトの名無しさん
垢版 |
2023/01/01(日) 15:14:11.17ID:qFCwFs0i
>>458-459
C++はゴミだと確信してたけどRustもゴミってことか
教えてくれてありがとう
2023/01/01(日) 15:17:51.36ID:8mQl/wdO
>>453
必修どころか常識やで
2023/01/01(日) 15:22:01.00ID:ZNJrRmgO
>>456
それGCどうやってるの?
2023/01/01(日) 15:27:38.23ID:BKjRVrWQ
大体C言語を碌に触らずにC++をCの上位互換言語を思ってるヤツがホント多い

Cでは**pは必須だけどC++ではそもそもC++で拡張された機能によってそもそも**pを使うべきじゃないし
物理アドレスを触るような場面ではそもそもC++を使うべきじゃない

そしてCの互換言語という点を差っ引いたらC++じゃなきゃいけないって場面は殆どない
2023/01/01(日) 15:34:44.56ID:ZNJrRmgO
お前さんの頓珍漢なべき論は要らんよw
2023/01/01(日) 15:35:56.13ID:MnJksM0+
C言語の開発資産しかない場合、次は上位互換であるC++に行くのが常道になるのが
自然の流れ

しかもRustは新興言語で実績もないから採用は不可
2023/01/01(日) 15:55:05.94ID:g9Gfx6Qg
>>465
なんでCもC++もよく知らんのに知ったふうな口きくん?
君はプログラマですらないやろ? ただのド素人やろ?
469デフォルトの名無しさん
垢版 |
2023/01/01(日) 15:59:31.54ID:c0wTdgdc
そりゃ技術評論社がLinux板から情弱連れてくるからだろう。
470デフォルトの名無しさん
垢版 |
2023/01/01(日) 16:00:58.69ID:c0wTdgdc
Haskell本が売れなくなったからRust売り込むことにしたんだろ。
迷惑な話よ。
471デフォルトの名無しさん
垢版 |
2023/01/01(日) 18:13:51.42ID:m2hNSU/p
C++の話になると途端に饒舌になる老害さん達
スレ間違ってますよww
2023/01/01(日) 18:21:28.05ID:ps54Dm7d
>>471
そう言うのは>>450,465に言った方がいいぞ
2023/01/01(日) 19:11:12.15ID:LWg4u5cF
>>450
>RustはそのCの代替と成りうる言語でなので
個人的にはそうは思えないけどな。
Rustは低レベルが扱いにくいから。
2023/01/01(日) 19:17:21.93ID:LWg4u5cF
>>473
[補足]
Cは、どういうコードが生成されるかとても分かり易いので安心感が有る。
それに対し、
(Rustは結構頑張って学ぼうとしたが)、Rustは抽象レベルでの意味論は書いて
あっても、最終的にどういうコードが生成されるか分からない(仕様が明確には
書いて無い)事が多い。
475デフォルトの名無しさん
垢版 |
2023/01/01(日) 19:20:49.98ID:LWg4u5cF
>>474
[補足]
Rustの場合、意味論は書いてあるのでどういう結果になるかは一応は分かるが、
結果的に何が行なわれるかは分かっても、どういうコードが生成されるかは
分からない事が多かった。それが分からないと高速化は難しい。
Cだと命令数やクロック数を数えることが出来たがRustでは出来ないと思った。
例えば、引数を渡す時に何回コピー動作が行なわれるかCやC++では分かるのに
対し、Rustでは分からないことが有るように思えた。
論理や意味は分かるが、途中にどういう中間工程が入るか分からないのだ。
2023/01/01(日) 19:24:18.90ID:LWg4u5cF
>>475;
Cではなくて、C++でも、
TYPE a = 5;
f(a);
と書いたとき、どういう動作がおきるか多くの場合はよく分かって、マシン語で
どういうコードになるかも分かる。コンストラクタがどこで呼び出されるか、
どこでコピー演算やムーブ演算が起きるのか、一応は分かる。
ところが、Rustでは分からない事が有った。
それでは問題を生じることが有る気がした。
2023/01/01(日) 19:32:28.31ID:J0mHLh9j
JScriptで書いていた支援ツールをRustで書き直そうかなぁ
そうすればwine/proton環境でも個別対応しなくて済むようになるし
2023/01/01(日) 19:34:34.15ID:g9Gfx6Qg
javascriptでツール書くとか猛者やなw
2023/01/01(日) 19:35:28.46ID:g9Gfx6Qg
あ、失礼JScriptってのが別にあるのね
知らなかったわ
2023/01/01(日) 19:36:40.86ID:cEMoHOhE
あーあ隙を見せちゃったな
2023/01/01(日) 19:39:07.32ID:LWg4u5cF
組み込みだと、「アドレスへの write アクセスが1回でなくてはならない」
場合がある。アクセスの回数によってハードウェアの動作が変わってくるから。
例えば、あるアドレスに 一回アクセスすると LED が点灯し、もう一回アクセス
すると LED が消灯する、などという動作がある場合がある。
場合によっては、音の PCM の振幅や、モーターの速度調整にそれを利用する可能性があるなど。
この場合、Rustではメモリーアクセスの回数が不明確になって、上手くプログラミングできない
かも。
2023/01/01(日) 19:41:37.18ID:LWg4u5cF
組み込みでは、
「最適化して後から後れてアクセスする」
「アクセスが時と場合によって省略される」
などが有っては駄目な場合がある。
Cだと結構上手く行く。
483デフォルトの名無しさん
垢版 |
2023/01/01(日) 19:58:47.06ID:v/m/qtfA
2年くらい前はHaskellが世界を席巻してたからな。
2023/01/01(日) 20:06:13.34ID:ps54Dm7d
>>482
> Cだと結構上手く行く。
アホの子なのかな?w
そもそも処理系の話だからCとかRustの話じゃないだろ
2023/01/01(日) 20:12:23.58ID:LWg4u5cF
>>484
でも、あなたにもC#で組み込みとか、Rubyで組み込みとかやっても難しいのは分かるよね。
それと似たようなことがRustでも起き得そうな気がするんだよ。
C#とかRubyでも、一応、atomicアクセス的な何かは用意されてるかも知れないけど、
そういう問題ではないおきるだろう。
2023/01/01(日) 20:19:06.23ID:t/WFYlqt
最適化に左右されたくないならちゃんとwrite_volatileとか使えばいいだけの話
memory mapped I/Oの制御なんて当然想定されてるよ
487デフォルトの名無しさん
垢版 |
2023/01/01(日) 20:21:02.90ID:v/m/qtfA
MCUがRustを考慮していないから無理。
それだけの話。
2023/01/01(日) 20:25:26.38ID:ps54Dm7d
>>485
気のせいとかいうレベルで語るなよ...
2023/01/01(日) 20:25:48.30ID:J0mHLh9j
C言語仕様はメモリアクセスの順序を保証しない。動いているのは
ただの偶然だしそのようなコードは仕様外の糞コードでFA
2023/01/01(日) 20:28:33.07ID:LWg4u5cF
Rustは高速化したいときにクロック数を数えにくいのも困る。
2023/01/01(日) 20:34:28.70ID:T0egek2q
>>483
どこの世界線の人かな
492デフォルトの名無しさん
垢版 |
2023/01/01(日) 20:35:45.62ID:v/m/qtfA
>>491
ステマ界に決まってるだろ。
2023/01/01(日) 20:50:47.69ID:k1WVbd3b
しかしCでいいと思ってるならわざわざこんなスレにトンチンカンな書き込みせずに黙って使ってればいいのに
Rustに置き換わって仕事なくなるかも的な心配で攻撃したいとかだろうか
そんな心配しなくても組み込みのCの仕事は当分なくならんよ
494デフォルトの名無しさん
垢版 |
2023/01/01(日) 20:58:20.82ID:v/m/qtfA
技術評論社が先に他言語スレへ侵攻を開始した。
495デフォルトの名無しさん
垢版 |
2023/01/01(日) 21:04:05.03ID:v/m/qtfA
既に5chあるいは国民と技術評論社の戦争に発展している。
2023/01/01(日) 22:40:47.03ID:hnV+fUB+
>>493
変な言語が流行って人類の負の遺産になる前の抑止効果。
2023/01/01(日) 22:44:49.52ID:Y6M2Pvqr
>>493
Rustはシステムプログラミングに向いてるってデマのせいじゃね
2023/01/01(日) 22:57:51.39ID:J0mHLh9j
組み込みでもRustを使えるならRust使うわ。Cは実装依存が多すぎる
正しいコードを書こうとしたらコーディングコストはRustより高くつく
499デフォルトの名無しさん
垢版 |
2023/01/01(日) 23:19:31.51ID:v/m/qtfA
実装に依存しない組み込みとか夢のようなことを言ってるな。
500デフォルトの名無しさん
垢版 |
2023/01/01(日) 23:20:05.95ID:v/m/qtfA
さすが技術評論社。
2023/01/01(日) 23:20:38.81ID:hnV+fUB+
>>498
組み込みは、メモリー関連エラーなんて起きないプログラムも多い。
というか保護モードも使ってないことも多いのでそれ以前の問題。
Lチカなんて、Rust不要。
2023/01/01(日) 23:21:05.99ID:hnV+fUB+
>>499
確かに。
2023/01/01(日) 23:25:26.99ID:O4Ho+Fsi
技術評論社からRustの本が出るだけであって技術評論社自体はRustと関係ない
いい加減に技術評論社発狂ガイジ出てけよ
2023/01/01(日) 23:26:26.18ID:hnV+fUB+
>>501
[補足]
組み込みの世界は「メモリー関連エラー」なんて言葉で語れるほど生易しいものではない。
一つ間違えればハードウェアがICが爆発したりモーターで人が死ぬような世界だったりする。
つまり、慎重に組む。
電線のつなぎ方を間違えれば部品が故障するが、それと同様にプログラムの間違いは
暴走や故障の現象になる。
だから、メモリー関連エラーで苦しむ程度の頭脳しか無いような人は組み込みに向いてない。
505デフォルトの名無しさん
垢版 |
2023/01/01(日) 23:29:45.04ID:v/m/qtfA
>>503
ステマしてるのが技術評論社では?
2023/01/01(日) 23:34:52.14ID:O4Ho+Fsi
>>505
おまえが技術評論社とかいうのをステマしなければいいだけ
RustスレでRustをステマすることのなにがいけないんだ?
2023/01/01(日) 23:35:46.35ID:O4Ho+Fsi
>>498
rustもlibc依存あるだろがいw
508デフォルトの名無しさん
垢版 |
2023/01/01(日) 23:40:06.46ID:v/m/qtfA
いや、もうダメだ。
技術評論社は、やりすぎた。
2023/01/01(日) 23:41:02.46ID:O4Ho+Fsi
あかん、ガイジだったか
構ってごめんね
2023/01/01(日) 23:42:13.87ID:J0mHLh9j
ttp://elm-chan.org/fsw/ff/00index_e.html
有名なマイコンや処理系で利用可能な高ポータビリティのCライブラリだが
このレベルのものを実際に書こうとしたらかなり高コスト
Rustのほうが楽かつ確実に動作する
511デフォルトの名無しさん
垢版 |
2023/01/01(日) 23:43:58.63ID:v/m/qtfA
MCUを替えたら、回路からすべて変わるのが当たり前なんだよ。
見苦しいな。
2023/01/01(日) 23:59:26.70ID:J0mHLh9j
組み込みでポータビリティを軽視している奴は昨今のマイコン不足で真っ先に退場するクチだろ
同じチップどころか同メーカーの互換チップすら調達出来ずに、メーカーから変えざるを得ない
こともあるご時世に、特定のハードと特定の処理系と特定のバージョンでなければダメみたいな
前時代的な考えでは話にならない
513デフォルトの名無しさん
垢版 |
2023/01/02(月) 00:00:24.79ID:/m9PT5PE
MCUメーカーがRustを考慮していない。
これが全て。
514デフォルトの名無しさん
垢版 |
2023/01/02(月) 00:01:23.42ID:/m9PT5PE
>>512
そうそう。
だから組み込みでRustを使ったらダメ。
C/C++一択。
2023/01/02(月) 00:01:42.41ID:7RCL5EAR
>>510
現実にC言語版があるんだから、C言語の方が便利だと思うのだが。
現時点でRust版は無いわけで。
2023/01/02(月) 00:04:21.03ID:7RCL5EAR
>>512
そんな簡単なもんじゃないと思うが。
そもそも論として、ピン番号が変わっただけでも、慎重に設計し直す
必要が出てくる。接続を間違えると大変なことになる。
現実にICが破裂したことがあり、目に入っていたら失明してた。
容易に全く別のICに交換することは出来ない。
517デフォルトの名無しさん
垢版 |
2023/01/02(月) 00:08:01.28ID:/m9PT5PE
そもそも、Rust推してる方がRustを使ったことなくて、否定的な方がRustを使い込んでる。
技術評論社の呼びかけでLinux板から来た連中はプログラミング自体したことが無いので、Rustは組み込みの互換性がCより高いとか言い出す。
2023/01/02(月) 00:19:21.42ID:7RCL5EAR
>>514
そういえば、「C言語ライクな言語」をサポートしているだけで、gccやclangに
対応して無いマイコンもあるから、Rustなんか到底無理なマイコンも多いな。
2023/01/02(月) 00:41:37.72ID:U4Kt6Q5r
組み込みやったことないけどメーカーサポートなんかいるんかね
ABIだけ指定してxargoでクロスコンパイルして終わりじゃないんか?
2023/01/02(月) 00:47:56.46ID:X+g/LIy1
このスレキショいな
2023/01/02(月) 00:50:40.14ID:Q+u3vnFA
cargo-c使えば何も問題無く組み込みに使えるのだが、、
2023/01/02(月) 01:01:37.89ID:YOUl3ux+
素人に毛が生えた程度のコーダーかエアプが知ったか煽りしているだけでしょ
2023/01/02(月) 01:02:43.28ID:7RCL5EAR
少なくともPICではRustは動かないようだし。
2023/01/02(月) 01:05:20.50ID:7RCL5EAR
AKI-H8 でも Rust は動かないようだ。
2023/01/02(月) 01:05:38.14ID:f/84eqys
Arduinoは行けるようだが
526デフォルトの名無しさん
垢版 |
2023/01/02(月) 01:06:42.39ID:/m9PT5PE
わざわざRustを使う意味が無い。
2023/01/02(月) 01:07:55.25ID:9S22MKkp
あんたら動かない動かないって知識足りなさすぎ
2023/01/02(月) 01:08:04.91ID:9S22MKkp
ちょっとは工夫しろよ
2023/01/02(月) 01:08:10.37ID:7RCL5EAR
そもそも、マイコンで、Rustがなくしたとする「メモリーエラー」で悩むことが無い。
2023/01/02(月) 01:09:08.65ID:7RCL5EAR
俺はずっとCやC++でプログラムしてきたが、メモリーエラーで悩んだことは
ほとんどない。
うそだと思うかもしれないが本当。
しかも、かなり複雑なシステムプログラムをしてきた。
531デフォルトの名無しさん
垢版 |
2023/01/02(月) 01:10:15.59ID:/m9PT5PE
ずっとやってるからでは?
2023/01/02(月) 01:10:28.23ID:mUnt8vIA
OSやモバイルアプリの開発も組み込みだよね マイコンだけじゃないよ
2023/01/02(月) 01:10:35.32ID:YOUl3ux+
ARMやRISC-Vはバックエンドあるし処理内容も高度化しがちで
Rustの高速性と安全性のメリットを享受しやすい

>>523-524
おじいちゃん。その辺はとっくに主力じゃないんですよw
2023/01/02(月) 01:11:00.49ID:7RCL5EAR
つまり、CやC++でメモリーエラーに悩まされて使いこなせない人は、
そもそも論として俺の脳のレベルにまで全く達して無い。
つまり、生まれつき俺はオマエラより遥かに頭がいいから、Rustを使う必要性が無い。
それだけの話。
2023/01/02(月) 01:12:02.90ID:7RCL5EAR
>>533
俺がお前より年食っていたとしても、生まれつきお前の脳の1000万倍優秀だから、
関係無い。
2023/01/02(月) 01:13:35.32ID:Jz3D7gL9
こちらでどうぞ
Rustアンチスレ
https://mevius.5ch.net/test/read.cgi/tech/1509028624/
2023/01/02(月) 01:14:42.16ID:7RCL5EAR
>>536
なお、悪いものを批判/非難することは公共の福祉や国益になる。
2023/01/02(月) 01:15:26.78ID:f/84eqys
>>530
ちゃんとしたコーディング規約を遵守してコード書いてればそうそうメモリエラーにはならんはな
2023/01/02(月) 01:18:38.28ID:wpREwZAU
そもそもRustはメモリ管理を強制するための規約的な言語だし笑
Cに制約をつけただけのドM言語
540デフォルトの名無しさん
垢版 |
2023/01/02(月) 01:19:02.22ID:/m9PT5PE
ステマは許可できんな。
2023/01/02(月) 01:20:17.30ID:gnmwHKvG
>>538
世の中にはそれすらできないお馬鹿さんたちがいるのです
諦めるしかないのだ
2023/01/02(月) 01:22:43.16ID:YOUl3ux+
Rust FoundationにARMをはじめ組み込み屋がいる時点でお察しだろ
2023/01/02(月) 01:24:30.62ID:l4/Jezsd
Rustは頭のいい人が頭のわるい人と一緒に仕事するために使うものだと思ってる
頭のわるい人にはC/C++よりRustを使わせたほうがマシなコードを返してくれる
それだけでもRustをプロジェクトに採用する価値が出てくる
2023/01/02(月) 01:27:04.29ID:l4/Jezsd
頭のいい人はRustを使わされてる
2023/01/02(月) 01:27:25.18ID:f/84eqys
>>543
いや、頭悪い人を間引いて同じ土俵に上げない為の言語だと思うが
敷居を下げ過ぎてJavaとか悲惨な事になってるじゃん
2023/01/02(月) 01:27:45.85ID:l4/Jezsd
マジでこの世が頭のいい人だけだったらRustなんて要らなかった
2023/01/02(月) 01:28:35.39ID:l4/Jezsd
>>545
rust使えないやつなんておるか?
2023/01/02(月) 01:30:00.39ID:f/84eqys
>>547
普通におるやろ
おらんと思ったん?
2023/01/02(月) 01:30:01.16ID:l4/Jezsd
Rustすら使えないやつなんてどんなコードも書けないよ
2023/01/02(月) 01:32:02.45ID:l4/Jezsd
>>545
JavaはGCあるからメモリ管理気にしなくていいやん
2023/01/02(月) 01:34:03.66ID:YOUl3ux+
PICやH8を引き合いに出している時点でプログラムの想定が違いすぎる
今どきの32bitマイコンのリソースはその辺と比べて1桁以上多い
処理するデータもマルチメディアデータだったりネットワークパケット等の
不安全なデータまで扱わなくちゃならない
もはや初期のWindowsPCに近い内容であり、注意すれば問題ないなど
全く無意味であることはセキュリティ事故が起きまくった歴史が証明している
2023/01/02(月) 01:34:11.63ID:7RCL5EAR
>>545
そもそも頭がよければ滅多にメモリーエラーに遭遇しないからRustを使う必要性
が無いし、Rustは記述量も多いし回りくどいので生産性が低いし、使えない
アルゴリズムも多い。
Rustの存在意義は、使えるアルゴリズムを制限して、記述も回りくどくして
コンパイラを頼りにしてやっと安全なプログラムを書けるような、凡人プログラマ
が生まれつき頭の良いプログラマに少し近付くためにある。
2023/01/02(月) 01:34:54.94ID:q+9Mkyzs
メモリ管理適当野郎共のC/C++出来ます詐欺はほんと酷いよね
2023/01/02(月) 01:35:13.17ID:f/84eqys
>>550
変な大企業が馬鹿みたいに人員投入して100人体制とかもっととかで開発やるもんだから出来上がったゴミがカオスコードになってるとかそういう話
2023/01/02(月) 01:37:36.65ID:l4/Jezsd
>>554
カオスコードでもGCでメモリリーク最小限で動くならいいのでは?
GC稼働を許す製品の話をしてるつもりはなかった
2023/01/02(月) 01:39:14.49ID:7RCL5EAR
>>554
GAFAMみたいな大企業は技術は無くても株価だけ高騰するから、金に任せて
大量の人員だけを頼りに出来るから、数百人がかりでバグだらけの使いにくい
巨大サイズのプログラムを作ってるね。
技術は無いが人だけ入る。凡人プログラマを大量に使って大量のCPUパワーを
使ってPC-9801時代のJG程度のOfficeを作って悦に浸ってる。
2023/01/02(月) 01:41:18.45ID:7RCL5EAR
>>553
ただ、俺はそれに該当しない。
そういう人も居るというだけの事。
2023/01/02(月) 01:43:49.06ID:YOUl3ux+
てかこういうのが日本の競争力を落としているんやなって
2023/01/02(月) 01:43:53.33ID:AzjsiFbw
ガベージコレクション使っていいならそら楽ちんですわ
どんな汚コードでも動けばいいんだから

ガベージコレクション無しだと例外処理の例外処理の例外処理を跨いだりして有り得ないところにメモリリーク起きてるなんてことがザラ、どんなに頭よくても絶対に気づけない
2023/01/02(月) 01:45:36.33ID:0OBugHkq
気をつけて運転していれば事故は起きないんだから安全運転なんか必要ない
事故るやつは無能だけど俺は違う

こうですかわかりません
2023/01/02(月) 01:48:35.58ID:7RCL5EAR
>>560
車の運転は一発勝負で失敗は一瞬にして起こるしテストすることも出来ない。
それに対して、プログラミングは事前にテストできる。
特にユニットテスト、モジュール別開発という手法を使えばバグはほとんど消せる。
だから十分にバグの無い安全なプログラムが作れる。
2023/01/02(月) 01:51:38.45ID:wpCELxyp
>>561
ほとんどで許されるクオリティの製品を作ってるの?
2023/01/02(月) 01:53:13.27ID:l4/Jezsd
Rustは仕事でしか使わない
趣味ではC++一択ですわ
2023/01/02(月) 01:54:24.45ID:7RCL5EAR
>>562
Rustは、「メモリー関連エラー」を防げるだけで、バグはいくらでも入る。
Rustも、下手な人がプログラムするとバグは100個でも入るし、不安定で
(その人の頭脳では)エラー箇所が見つけられないバグも入り得る。
2023/01/02(月) 01:54:52.62ID:l4/Jezsd
それとGC有りはGoとKotlin&Swiftや
Goは最強過ぎる
2023/01/02(月) 02:08:35.19ID:iBEz6sTU
>>545
間引きまくってたら募集が集まらないし賃金も上がる
質の悪い土方人間をも上手く使っていかなきゃならない
質の悪い土方の書いたコードでもrustなら厄介なメモリバグ無く論理部分のフィードバック、デバッグに集中できるというメリットがある
567デフォルトの名無しさん
垢版 |
2023/01/02(月) 02:20:43.43ID:/m9PT5PE
またステマしてるのか。
2023/01/02(月) 08:04:20.77ID:5vPX8Xay
RustはCの置き換えくらいにしかならん
質の悪いPGが入り込まない分野じゃねえかなあ・・・
2023/01/02(月) 08:33:37.75ID:nNAGgWWg
だからWebでRustやってる奴は馬鹿
Cとpthreadの経験もないやつはRustやらない方がいいよ
2023/01/02(月) 09:51:22.76ID:0wpgrwz2
>>561
Rustでモジュール別開発、ユニットテストするのが一番いいんじゃね?


てかステマステマ言ってるやつ居るけど出版社がプログラミング言語のプロパガンダしてなんの得になるんだよドメインが違うやろ
出版社なら勝確になった言語の本を出すだけでいいはず
ステマで特定言語を覇権に押し上げても他社が解説本出すのを止められないから独占できる利益とかどこにもない
2023/01/02(月) 11:12:02.50ID:Gy4QUALO
>>543
javaと同じIT土方専用になりそう
2023/01/02(月) 11:28:29.88ID:YmLvf+iB
>>571
土方じゃないのってなんだよ
フロント設計用言語か?
2023/01/02(月) 12:32:43.21ID:4sGLZD36
>>543これだな
頭の程度の低い人なら安く雇えるから開発費を抑えられる
c/c++をまともに使えるやつの人件費は高すぎて困る
2023/01/02(月) 12:41:13.29ID:/FZtEsII
まあ1Mにも満たない規模の組み込みでrustはいらんわな。
数GBかつメモリ使用量を気にするって領域以外はほぼ必要ない。
2023/01/02(月) 12:42:40.05ID:EJhafa7d
>>573
頭の悪いやつはJavaしか使えんよ
2023/01/02(月) 13:04:35.26ID:CiQJ5hLG
うちの洗濯機ってなんの言語で動いてるんだろ
2023/01/02(月) 13:27:14.96ID:+OfFIZCg
今どきの家電はインタプリタ言語で動いてるとか
2023/01/02(月) 13:35:26.47ID:hMsVB3IX
>>574
ArduinoでもRaspiでも、Cだとそのまま単純に理解できて便利だな。
579デフォルトの名無しさん
垢版 |
2023/01/02(月) 13:37:29.21ID:68tUcpM+
>>576
そらC#に決まってる
2023/01/02(月) 13:42:25.25ID:hMsVB3IX
>>568
ところが、Rustの安全性は大規模プログラムで無いと真価が発揮できないから、
帯に短し襷に長し状態。
Cは小規模プログラム向けで、大規模プログラムはC++だから。
2023/01/02(月) 13:58:18.86ID:1k7qyNCA
>>576
多分C言語 + 一部アセンブラかと

洗濯機・掃除機・調理家電の組み込みソフト開発
組込みソフトウェア開発の経験(C言語他,モデルベースソフト開発)
https://www.hitachi-gls.co.jp/recruit/career/recruit/pe2.html
2023/01/02(月) 14:23:20.98ID:YOUl3ux+
今しか見ていない情弱の鏡
2023/01/02(月) 14:29:37.31ID:hMsVB3IX
>>568
組み込みって分野は、基本的に微分積分やベクトル、論理回路、複素数などが
普通に出てくる世界だから、頭脳レベルが一般プログラマより元々高い。
だからもともとメモリーエラーで苦しんだりする人が少ない。
なので、Rustの出番が無い。
584デフォルトの名無しさん
垢版 |
2023/01/02(月) 14:36:17.90ID:FoyI26k+
>>583
その一般レベルプログラマと一緒に仕事しなきゃいけないときには頭脳の高い人も仕方なくRustを使うのでは?
社会活動ってマジで頭脳の高い人が損する世界だわ、一般レベルプログラマは消えてもらって頭脳の高い人集団でCだけ使わせてほしいわ
585デフォルトの名無しさん
垢版 |
2023/01/02(月) 14:38:59.98ID:FoyI26k+
好きでRustを使ってる人なんてこの世に居ないと思うよ
みんな納品先や上からの命令でイヤイヤRustを使ってる
586デフォルトの名無しさん
垢版 |
2023/01/02(月) 14:39:14.35ID:J6556tKT
フロントの意味知らないやつとか
バックエンドの意味知らないやつとか
ホントなんなんこのスレw
587デフォルトの名無しさん
垢版 |
2023/01/02(月) 14:47:05.55ID:8T2JCaCm
>>583
スマホに使うチップのコードを書いてる知人が何人かいるが頭脳レベルが高いとか全くないわ
Fラン文系新卒で3ヶ月の新卒研修後に客先派遣されるような末端プログラマーに比べたらそりゃ頭脳レベルwは高いがな
588デフォルトの名無しさん
垢版 |
2023/01/02(月) 14:47:48.26ID:rNCwFI/s
rustはやってるとイライラするから私用ではぜっっっっったいに使わないw
rust大好きステマするやつは頭おかしい
2023/01/02(月) 14:52:40.32ID:2CTZhPr+
Rustはマイクロソフトが採用したり
Linuxのデバイスドラバで採用されたり
トヨタ自動車の組み込みソフトで採用されたり
特殊用途ではこれから発展していくけど
さらに一般的になるには 最低でも10年くらいかかるといっていだろう
590デフォルトの名無しさん
垢版 |
2023/01/02(月) 14:56:42.31ID:VUVgrbrW
c++やjavaとかは人間様のための言語だけど、
rustはコンピュータ様のための言語だからね
人間がコンピュータ様の奴隷になって制約されながら設計する言語だからrust好きの人間はドM確定
591デフォルトの名無しさん
垢版 |
2023/01/02(月) 14:59:59.54ID:VUVgrbrW
>>589
一般的になってほしくねえなあ
2023/01/02(月) 15:07:37.03ID:1k7qyNCA
>>591
お前みたいなど底辺まで降りてこないから心配すんなw
2023/01/02(月) 15:09:37.54ID:hMsVB3IX
>>589
本当の事は知らんが、PerlやJava、Rubyの本が本屋に沢山並んでいた頃には、
既にそれらの言語はよく使われていたのに対し、Rustは本はその状態になったのに
余り使われて無い現実がある。知名度が高いのに使われて無い。
2023/01/02(月) 16:35:19.00ID:1k7qyNCA
Rustの本がたくさん並んでる本屋ってどこ?
595デフォルトの名無しさん
垢版 |
2023/01/02(月) 19:09:09.75ID:YhyxjXQU
Rustの本くらい近所の町図書館にすら置いてるわ
2023/01/02(月) 19:16:20.01ID:1k7qyNCA
>>595 は「たくさん」という言葉すら理解できないのか...
2023/01/02(月) 19:16:22.22ID:f/84eqys
>>594
Kindleでええやん
598デフォルトの名無しさん
垢版 |
2023/01/02(月) 19:32:00.38ID:bVUI9Zvi
>>594
紀伊國屋書店はたくさんあるで
いまはこの本を通販で買って勉強中
https://www.kinokuniya.co.jp/f/dsg-01-9784873119595
599デフォルトの名無しさん
垢版 |
2023/01/02(月) 19:34:02.10ID:l4/Jezsd
今日は初詣に行ってきた
Rustさん普及しないで下さいと神頼みしてきた
600デフォルトの名無しさん
垢版 |
2023/01/02(月) 19:39:19.94ID:Qsv7PpLz
>>599
お前には無意味な願いだな
お前にRustの仕事が来るわけ無いもんなww
2023/01/02(月) 19:41:54.59ID:f/84eqys
>>600
どう考えてもゴミプログラマやゴミ企業が参入してくるなって意味やろ
602デフォルトの名無しさん
垢版 |
2023/01/02(月) 19:42:30.75ID:l4/Jezsd
>>600
それな
だけどタワマンをローンで買ったばかりだから簡単に辞められない😭
来週からまたRustやらなあかん😭
603デフォルトの名無しさん
垢版 |
2023/01/02(月) 19:59:34.00ID:VzocPQJy
>>586
ガイジばっかだからしょうがない
2023/01/02(月) 20:14:22.01ID:1k7qyNCA
>>598
まあ紀伊国屋さんなら...
でも検索すると結構あるんだな、ちょっと驚いたわ
605デフォルトの名無しさん
垢版 |
2023/01/02(月) 20:30:32.37ID:XEaXux8L
俺は実用にしてるのはC#で、Rustやら情報科学やらは教養のための修行だと思って勉強してる
2023/01/02(月) 20:57:28.93ID:1nPeGYO+
>>605
その目的ならRustではなくCをやるべき
607デフォルトの名無しさん
垢版 |
2023/01/02(月) 21:02:55.55ID:kxn3UFF9
Cは実用になっちゃうからな。
修行に向いてない。
2023/01/02(月) 21:11:43.92ID:f/84eqys
Rustでプログラミング始めるヤツなんておらんやろ
最低5言語くらいマスターしてる人が道楽として試すのから入るのが殆どじゃない?
609デフォルトの名無しさん
垢版 |
2023/01/02(月) 21:31:15.99ID:kxn3UFF9
Rustで生涯修行してればよい。
2023/01/02(月) 21:42:04.71ID:V6kLsOzd
今北なんだが、メモリー関連バグを潰せるだけでRust採用の価値があると思うけどそうじゃないんか
メモリー管理ミスが6割と聞いた
2023/01/02(月) 21:52:47.16ID:Gy4QUALO
>>610
linuxのドライバー作成ならいいかも
612デフォルトの名無しさん
垢版 |
2023/01/02(月) 22:10:50.96ID:QyytlXeP
>>598
紀伊國屋てw
ジュンク堂と双璧をなすラスボスですやん
613デフォルトの名無しさん
垢版 |
2023/01/02(月) 22:12:22.06ID:tEANpl9g
>>610
何事も良い面と悪い面があるので
自分のユースケースに当てはめてトレードオフを判断すべき
614デフォルトの名無しさん
垢版 |
2023/01/02(月) 22:14:14.00ID:Pa+Nwx1c
>>605
C#やってるならSwift勉強するといいぞ
教養とは違ってC#の力が向上する
2023/01/02(月) 22:25:45.48ID:U4Kt6Q5r
C#だのSwiftだのJavaだのスレチじゃバカども
2023/01/02(月) 22:34:00.16ID:+w7X3Pyb
ファイルシステムのパス回りをいい感じに抽象化してくれる(もしくは整形してくれる)クレートとかない?
env!("APPDATA")→"C:\Users\・・・\AppData\Roaming"
current_exe()→"\\?\C:\foo\・・・"
違うパス形式が入り混じるのはトラブルの元
2023/01/02(月) 22:48:29.16ID:65aHjL4I
まず Windows を窓から投げ捨てます
2023/01/02(月) 22:53:21.97ID:S0abPazk
>>616
fs::canonicalizeかければとりあえず形式は揃うんじゃない?
619デフォルトの名無しさん
垢版 |
2023/01/03(火) 00:03:36.64ID:z3nhExEu
>>610
頭脳の高い人はそもそもメモリ関バグを引き起こさないからRustである意味がない
620デフォルトの名無しさん
垢版 |
2023/01/03(火) 00:22:12.16ID:yTVwCgmJ
>>619 人間は間違う生き物だぞ
2023/01/03(火) 00:35:48.41ID:lG7LTjUD
>>620
頭脳明晰な人は
・論理を間違う頻度が極端に低い。
・テストの仕方が合理的でシステマチック。
・問題が発生しても原因箇所を突き止めるのが上手い。
622デフォルトの名無しさん
垢版 |
2023/01/03(火) 00:56:11.95ID:iu5XrAAr
頭脳明晰な人は人間の限界をよく理解している
注意資源を無駄なことに使わないためにどうすればいいかを考える

頭の悪い人にはこれが理解できない
2023/01/03(火) 01:02:17.21ID:lG7LTjUD
>>622
もっと頭のいい人は、特に注意して無くてもちゃんと出来てる。
2023/01/03(火) 01:17:35.62ID:FM7p8eEf
架空の「何でも完璧にできるプログラマー」などを頭の中で作り上げたところで何の意味もない
実際にそういう人だけで回せている組織を教えてくれ
625デフォルトの名無しさん
垢版 |
2023/01/03(火) 01:24:27.20ID:EuUAQyXR
>>621 そりゃすげえや
天才しか入れない会社であるGoogleで作られたソフトウェアには脆弱性が存在しないことになるんだからな
2023/01/03(火) 01:28:02.05ID:JZU75e4y
>>616
Ruby では、File.expand_path で、\ を、/ に変換できる
627デフォルトの名無しさん
垢版 |
2023/01/03(火) 03:16:16.17ID:KtR68cDI
>天才しか入れない会社であるGoogle
夢見過ぎw
算数100点オジと同じ発想だぞ
628デフォルトの名無しさん
垢版 |
2023/01/03(火) 03:21:18.09ID:4wglqwE1
>>623
最高に頭悪そうな発言だな
小学生1年生かよ
2023/01/03(火) 03:59:57.20ID:FAR4SCa0
>>618
サンクス。それを通すとUNCライクになるんか
リファレンスを見るとこの仕様が確定しているわけではなく
互換性の面でUNCライクのパスが望ましいのかという問題も
なんとなくだけど互換性はドライブレタースタートのほうが高そう
というかググってもパス情報の推奨される扱いとかよくわからんな
PathBufが返ることが多いためかmutをつけてる例が多く見えるけど
加工が終わった後もmutのままにしておくのが望ましいとも思えないし
2023/01/03(火) 07:04:07.60ID:njxOMnvb
>>625
そのGoogleがAndroidにRustを使うようになってバグが減ってるからGoogle程度では頭脳明晰な人ばかりではないらしい

https://japan.zdnet.com/article/35196972/
2023/01/03(火) 08:12:40.12ID:qI8JCo5P
○○バリア!
○○バリア貫通ビーム!
○○バリア貫通ビーム完封バリア!
まじで小学生と同じやな

グーグルの社員ですらメモリ管理をミスる
それより賢い天才が居ればそいつはCで良いよ、でも俺はそうじゃないのでRustを学んでるよ
ある意味メモリ管理を絶対にミスらない天才がコンパイラ
2023/01/03(火) 08:30:40.46ID:iKNX9wDb
>>629
mut が気になるならシャドーイングで消せばいいよ
let mut a = …

let a = a; // これ以降変更不可
2023/01/03(火) 10:24:54.22ID:Wjw3Ta6M
>>629
dunce crateのほうがいいかもね
ていうか本音はcurrent_exe()が完全修飾パス返すのをやめてほしいところ
2023/01/03(火) 12:37:20.83ID:guKgEgHI
ここってこんなにカオスだっけ
2023/01/03(火) 12:48:32.86ID:jNo/ZtXx
ディープステートに関わり持つやつが荒らしに来ている!
2023/01/03(火) 15:23:27.19ID:GGjfHYq/
頭のいい人の気持ちを一般人は理解できない。
2023/01/03(火) 15:33:14.38ID:GGjfHYq/
>>631
犬と人間くらいの知能差があるとすれば話は違ってくる。
Google社員は犬の中の秀才程度。
2023/01/03(火) 15:38:13.00ID:GGjfHYq/
>>631
俺からすれば、コンパイラは決まりきったことだけこなす単純馬鹿だけどな。
639デフォルトの名無しさん
垢版 |
2023/01/03(火) 16:20:19.42ID:N8ek48Mq
>>638
コンピュータなんだから当たり前では?
2023/01/03(火) 17:21:00.77ID:FAR4SCa0
>>632
となるとパスを整形する関数を用意して切り離すべきか

>>633
なかなかよさそうですね。使ってみます
>There are also Windows NT UNC paths (\\?\C:\foo), which are more robust and with fewer gotchas
>but are rarely supported by Windows programs. Even Microsoft's own!
思うことはみんな同じなんやなって
641デフォルトの名無しさん
垢版 |
2023/01/03(火) 18:42:10.36ID:yYGSV1g6
技術評論社の呪い。
2023/01/03(火) 18:46:23.16ID:EF4+Zmp+
技評技評言ってるヤツがしつこいが正直Rust流行ったからって技評のあの構成じゃ売れんだろ
2023/01/03(火) 18:49:28.25ID:FAR4SCa0
canonicalizeって存在しないパス情報を扱えない?のか(fsもdeucnも)
let path = dunce::canonicalize(Path::new(".\\foo")).unwrap();

は.\fooが存在しない場合Errが返ってパニックする
こうなるとパス情報は他の処理系と同じく文字列で保持して
使用するところでPathに変換するのがベターなのかな
644デフォルトの名無しさん
垢版 |
2023/01/03(火) 18:57:54.40ID:yYGSV1g6
>>643
それ、実はかなり深い問題だぞ。
特に、環境依存のないライブラリではな。
Rustだから安全ですとか言ってないで、経験豊富なC++スレにでも聞きに行け。
2023/01/03(火) 20:14:15.53ID:ZKwlKjAo
>>643
っstd::path::absolute
646デフォルトの名無しさん
垢版 |
2023/01/03(火) 20:19:29.87ID:yYGSV1g6
深い問題だと言ってるだろ。
Rustだから安全ですと言ってないで、わかってる人に聞きに行け。
2023/01/03(火) 20:23:30.48ID:iKNX9wDb
>>643
dunce::simplifiedでUNC除去するのがいいんじゃない?
別にPath自体は存在しないパスも保持できるしOsStringにするほどのこともないように見えるけど
648デフォルトの名無しさん
垢版 |
2023/01/03(火) 20:57:51.98ID:pV/Lv/4Y
>>645
\\?\にabsoluteは対応してなくない?
2023/01/03(火) 20:59:49.29ID:FAR4SCa0
>>645,647
そもそも一律で絶対パスに展開するのが最良なのか?ってところから再検討中
リモートになりうるパスを絶対パスに展開するとトラブルの発生率が増す気がしてきた
650デフォルトの名無しさん
垢版 |
2023/01/03(火) 21:01:15.66ID:yYGSV1g6
Rustスレでそんなこと質問したって無理だから。
いい加減諦めて実績のある言語スレに行け。
2023/01/03(火) 21:21:04.77ID:FM7p8eEf
誰も「Rustだから安全です」なんて言ってもいないしそもそも必ずしも安全でないことぐらい少しRustのこと勉強した人なら誰でも知ってる
2023/01/03(火) 21:39:29.06ID:MrpqBo7i
>>649
とりあえずPathBuf(参照ならPath)で保持しておいて必要な時にcomponents()で展開する感じがいいのかな
std::pathのPathBuf、Component、Prefixあたりでそれなりに抽象化はできてると思う
あとは目的次第
2023/01/03(火) 21:42:19.01ID:nBTO23xG
>>651
>>231
654デフォルトの名無しさん
垢版 |
2023/01/03(火) 21:54:07.94ID:yYGSV1g6
>>651
知ってたらRustなんか使わんだろ。
2023/01/03(火) 21:57:01.67ID:njxOMnvb
しかし何でこんなにアンチ多いんだろうな
ノイジーマイノリティのような気もするけど
海外だと人気あるのにな
656デフォルトの名無しさん
垢版 |
2023/01/03(火) 21:57:32.41ID:ma6uRps2
Rustは使うこと自体が修行だからだよ
657デフォルトの名無しさん
垢版 |
2023/01/03(火) 21:59:13.22ID:3FZZMCLr
C/C++のように黒魔術を使いたい
2023/01/03(火) 22:14:16.03ID:iKNX9wDb
>>655
多いって言っても結局はいつもの人が連投してるだけだしせいぜい数人では
他のSNSやリアルではこんな人見たことないしなぁ
2023/01/03(火) 22:17:50.62ID:MrpqBo7i
あくまでこのスレの雰囲気からの判断だけど
自分は万能で何でもできると思ってるタイプの人間がどうしてもRustを使いこなせなくて
自分が理解できない言語は欠陥言語に違いないって感じで叩いてる印象
多少扱いにくい言語でもHaskellみたいにマイナーならここまで荒れなかったかもしれない
660デフォルトの名無しさん
垢版 |
2023/01/03(火) 22:23:59.76ID:yYGSV1g6
Haskellも叩かれてただろ。
技術評論社のステマが過ぎるんだよ。
2023/01/03(火) 22:56:34.25ID:LnW2mOli
>>659
「すっぱい葡萄」だな
2023/01/03(火) 23:01:13.76ID:EF4+Zmp+
少なくともRustを使えっていう現場は今のところ日本では皆無だと思うけどね
2023/01/03(火) 23:03:15.73ID:5f9B2sCv
>>659
C/C++ は文法が無茶苦茶で扱いにくい部類なんだがなんだかんだで資料も多いし
慣れている人も多いから「これが普通」みたいな感覚になっちゃってるんだよな。
そこから遠い言語は「なんか普通じゃないやつ」に見えてしまうんだと思う。

言語としてスマートであろうがなかろうがエコシステムが充実してるほうが強いので
そこで C/C++ が長く支配的な立場だったけど現状の Rust なら十分すぎるほどに
充実してきてるんだから用途的にマッチするなら使えばいいと思うんだがなぁ。
664デフォルトの名無しさん
垢版 |
2023/01/03(火) 23:11:21.73ID:Le3CBufs
>>659
叩かれてるうちが華よ。
Haskellスレの↓が的を射ている。2023年、Rustでも見放しが起きるかもよ。
https://mevius.5ch.net/test/read.cgi/tech/1639713446/181
2023/01/03(火) 23:18:33.15ID:jBK7hIQX
>>663
Rustはそれ以上に変な文法だ。
2023/01/03(火) 23:19:10.28ID:jBK7hIQX
>>659
使いこなせないんじゃなくて、魅力を感じない。
2023/01/03(火) 23:19:50.78ID:mPQC6C/f
新着レスの表示を押したらgihyoアンチ出てきて笑ってしまった
2023/01/03(火) 23:23:41.66ID:jBK7hIQX
なお、Rustが欠陥言語なのはハッキリ分かってる。
669デフォルトの名無しさん
垢版 |
2023/01/03(火) 23:26:45.90ID:tE3kJFmJ
https://mevius.5ch.net/test/read.cgi/tech/1639713446/181
になぞらえよう。

2022年、NSA(アメリカ国家安全保障局)公認メモリ安全言語にGoが入った時点で、
「Rustが自賛する」メモリ安全は「白けた話」になった。
Rustはもうどうでもいい。
2023/01/03(火) 23:27:03.95ID:EF4+Zmp+
>>660
お前にとって技術評論社はギフハブか何かに見えてるのか?
2023/01/03(火) 23:48:42.74ID:jBK7hIQX
使いたいけど使えない人 = 能力不足。
使えるけど使いたくない人 = 個人の選択の自由。
俺は後者だから。
672デフォルトの名無しさん
垢版 |
2023/01/04(水) 00:40:30.83ID:DBMM4FaV
技術評論社が自演ステマする言語はすべて潰れる。
2023/01/04(水) 00:42:55.13ID:ZDKq+a5p
文字列のパスの正当性をチェックしてくれるクレートとかないんだろうか
いわゆる汚染チェックだがダメ文字が含まれている、記法が有効ではない等々
WindowsのAPIにそれっぽいのがないかと思ったけど見つけられんかった
GetFullPathNameはファイルのみでディレクトリ名は不可っぽいし
exist類を利用する方法も出てくるけどこれはファイルやディレクトリがある
ケースでしか使えない
674デフォルトの名無しさん
垢版 |
2023/01/04(水) 00:55:50.44ID:BfGbXrWm
2022年 はちみつ味の複製ポエムバレしてRustは白けた話になった
2023年 標準ライブラリ軽視からのクレート探しの自走力無き苦行
合計:白けた話+苦行=見放し
2023/01/04(水) 01:06:23.83ID:U+qe0cea
いままでC/C++の代わりになると云われた言語たちがどれだけ敗走したことか
そのRustの力とやら、見せてもらおうか!
676デフォルトの名無しさん
垢版 |
2023/01/04(水) 01:06:49.84ID:tdp90SFj
>>657
ハイジェニックマクロはどうだい?
2023/01/04(水) 02:42:42.79ID:qTJ/GIFa
Rust使わないことを選んだのなら、こんなとこで無駄な時間使ってないでC/CPPのスレで活躍したほうが良いのでは?
2023/01/04(水) 03:10:48.22ID:U+qe0cea
Rust「うあ~!汚コード増し増し負けたンゴ~!」
679デフォルトの名無しさん
垢版 |
2023/01/04(水) 09:03:32.34ID:oXSJ1jtE
>>662
ここのRust'erも大体は海外企業勤めでしょ
国内は仕事無いし
2023/01/04(水) 09:34:24.21ID:lFNs7lW+
>>662
わかんないよ、数年前だけどAdaの仕事があったし
まあ研究所からだけどウチの会社にAdaなんて書けるやつがいることにビビったわ
681デフォルトの名無しさん
垢版 |
2023/01/04(水) 15:33:07.79ID:vtx89qb1
ま、ぶっちゃけ、RustよりSQL覚えた方が仕事はあると思うよ。
2023/01/04(水) 15:42:42.57ID:ppyTErtg
カーネルドライバのいくつかがRustで書かれ始めちゃってるので
いやでもぶち当たる日が来るので仕方なく勉強してます。
今のところはクソ言語と言い切れるほどのクソさにはぶつかってないかな
683デフォルトの名無しさん
垢版 |
2023/01/04(水) 16:09:30.84ID:KNHhQhy0
基本的にクソだけど我慢出来ないほどではない
2023/01/04(水) 18:43:18.99ID:I7h9hggJ
>>659
叩かれてない言語は多くの人が使いこなしてるって意味だねw
2023/01/04(水) 18:51:29.68ID:MrWX6jB2
プロファイラーの皆さん鑑定お願いします
https://mevius.5ch.net/test/read.cgi/tech/1672409791/27
https://mevius.5ch.net/test/read.cgi/tech/1670663822/673
2023/01/04(水) 19:22:28.35ID:EQzsTg8p
オッサンだけど女の子に生まれて百合恋愛がしたいだけの人生だった、女の最大の特権って百合ができる事だよな
2023/01/04(水) 19:56:07.97ID:lFNs7lW+
>>666
なんで魅力を感じない言語のスレなんてわざわざ見てるんだ?
暇すぎるだろw
688デフォルトの名無しさん
垢版 |
2023/01/04(水) 19:58:59.00ID:Ms6LgXDx
業務で使わされてるから
2023/01/04(水) 20:25:18.15ID:5/zWl+ll
>>687
悪い評価も言論の自由な社会では大事。
2023/01/04(水) 20:45:25.47ID:lFNs7lW+
>>689
正しい評価ならな
無能の誹謗中傷は要らん
2023/01/04(水) 20:48:18.41ID:5/zWl+ll
>>690
正しい評価のつもりだ。
692デフォルトの名無しさん
垢版 |
2023/01/04(水) 20:55:18.09ID:QxUfEWbZ
技術評論社のステマが最も有害。
2023/01/04(水) 21:20:30.26ID:lFNs7lW+
>>691
根拠も示さずに正しいつもりとか言われてもね

> なお、Rustが欠陥言語なのはハッキリ分かってる。
694デフォルトの名無しさん
垢版 |
2023/01/04(水) 21:23:31.68ID:QxUfEWbZ
Rustには欠陥が無いようなことを言い出したぞコイツ。
2023/01/04(水) 21:25:52.36ID:oUT+lvyR
なんかまたErrorトレイトのメソッド変わってる……
見落としてたけど1.64からでしたか
2023/01/04(水) 21:59:12.78ID:lFNs7lW+
>>694
なにが欠陥なのか指摘も出来ないクズ乙
2023/01/04(水) 23:47:28.90ID:tw+8ew0C
まあリーナスみたいに的確な指摘がちゃんと出来れば皆聞く耳を持つだろうにね
2023/01/05(木) 01:09:00.20ID:DO2QGxg+
>>697
Linusみたいな有名人が言ったら信じるだけで、
ちゃんと説明しても自分の頭で理解できない人が多い。
2023/01/05(木) 01:10:45.51ID:9rdfNmCZ
それ以前に欠陥の具体例すら挙がってないが
2023/01/05(木) 01:14:21.99ID:DO2QGxg+
>>699
このスレや前スレで何度も上がってる。
2023/01/05(木) 01:23:36.54ID:55d9gDO6
複数の実装を抽象化する想定のtraitにErrorなどというassociated typeを持たせて実装を分けてしまうと死ぬほど面倒だということを学んだ
2023/01/05(木) 12:28:43.89ID:QUS/oJRF
windows::~の使い方の情報が少なすぎ。String→PCWSTRの変換方法もよくわからないし
MessageBoxWに任意の文字列を表示することすら不安定
FFIでuser32のMessageBoxWを直接叩いたほうがマシ。こっちならさすがに安定するようだ
2023/01/05(木) 13:45:51.93ID:W/FjpTuq
制限多いしリファクタリングしづらいわな
2023/01/05(木) 17:20:24.40ID:YRkXkG+b
結果汚コードまみれのゴミになる
2023/01/05(木) 17:33:14.38ID:Hd+KI7WM
>>702
Rustの文字列はUTF-8でナル終端なしだからワイド文字だと
・UTF-8→UTF-16変換
・'\0'追加
の2段階の操作が必要

ナル終端だけならstd::ffi::CStringでいけるけど、ワイド文字(UTF-16)使うなら
内部でVec<u16>を保持する専用の文字列型を用意した方がよさそう

あとはwindows::core::PWCSTR::from_ptr()にVec::as_ptr()を渡してPWCSTRを作る
このPWCSTRが使われてる間はVecを消したり変更したりすると危ないけど
&PCWSTRで返す形にすればライフタイムで束縛できるかな

この辺の操作はwindows-rsでも直のFFIでも変わらないと思う
2023/01/05(木) 18:06:32.68ID:QUS/oJRF
>>705
そんな感じで実験してみたんだけど不定期にMessageBoxWが意図しない文字列を表示する
ボローチェッカーは何も言わないけど結果からすると明らかに信用ならない
FFI利用の直叩きなら問題ないさそうだしPWCSTR::from_ptr()以降が怪しそう
2023/01/05(木) 20:22:41.35ID:fYcl0Ze4
Carbonに期待
2023/01/05(木) 21:53:29.87ID:qIx9AnNX
他の言語でも同じ問題抱えているのに
rustではこういう問題があるぞーって批判目的で書いてる人って何なんだろう
2023/01/05(木) 22:15:07.43ID:QUS/oJRF
というか
ttps://learn.microsoft.com/ja-jp/windows/dev-environment/rust/rss-reader-rust-for-windows
この記事って罠じゃね?winapi使うかFFI使うかしたほうが無難な気がする
2023/01/05(木) 22:32:24.42ID:W/FjpTuq
レイヤー低いところをいじる場合はそのまま生で見えた方がデバッグがやりやすいってのはある。
まあ生で見えるから変なことも起こるんだが、この辺りはトレードオフの話だ。
2023/01/05(木) 23:50:31.90ID:gC/ORVIb
RustがCやC++の文法に似ているというのはウソだと思うね。
本当に似てると思うなら感性を疑う。
712デフォルトの名無しさん
垢版 |
2023/01/06(金) 00:27:00.08ID:YGAtDmlk
似てる
C++から黒魔術をほとんど排除したのがRust
2023/01/06(金) 00:30:58.61ID:HDVxNHRA
文法つっても BNF 的な意味での文法とセマンティクスまで含めた文法では意味合いが違うし、
「どういう意味で似ている」「どういう意味で似ていない」という基準を提示せずに感性で判断しようとするのなら感性を疑う。
2023/01/06(金) 00:47:31.60ID:Pn7zd4wp
>>712
そうは思えないけどな。
似てると言い切るのは無理やり感がある。
2023/01/06(金) 00:59:43.04ID:Bj/0zi83
プロファイラーの皆さん鑑定お願いします
https://i.imgur.com/c9uHodQ.png
https://i.imgur.com/cQKkRzG.png
2023/01/06(金) 01:00:07.18ID:sXnz8uH8
はちみつ餃子vsオイコラミネオスレ並行するのやめてもらっていいですか
2023/01/06(金) 01:04:05.46ID:qbbs3BIz
お前ら独自エラーはどうやって作ってる?
俺はenum使ってるんだけどこれ普通?
2023/01/06(金) 01:25:12.21ID:AnNs2Aua
ディレクトリのコピーってないのか・・・再帰処理の実装は特に面倒なのに
2023/01/06(金) 01:33:35.60ID:Pn7zd4wp
MSの際と出もRustをC++と似てると豪語しているが、信じられない。
720デフォルトの名無しさん
垢版 |
2023/01/06(金) 02:32:49.50ID:xvNP3xU8
RustとC++がそっくりってそれ中国語と英語がそっくりって言ってるようなもんだよ
2023/01/06(金) 02:35:31.30ID:qbbs3BIz
RustはテンプレートがC++よりスマートだよね
template<typename T>とか書かなくてもいいし
722デフォルトの名無しさん
垢版 |
2023/01/06(金) 02:57:32.46ID:BA4ANj8t
>>720
中国語と英語はそっくりかもしれないけど
C++とRustは全く違うものです
723デフォルトの名無しさん
垢版 |
2023/01/06(金) 03:08:45.48ID:7s7EbfVR
Rust, Go, Swiftの3言語登場の前後で、時代が変わった級の変化を感じてしまうが・・・・
有名言語で一番どれに近いって言われたら、文法は違うけどSwiftじゃないかな
2023/01/06(金) 08:20:37.92ID:7YOuN382
ムーブとRAIIあたりはC++くらいしか似てるものがない気はする
他はそんなに似てないかな
2023/01/06(金) 11:05:56.60ID:W6TcEBoi
C++は似てる似てない以前にちゃんとした知識がないわ。
726デフォルトの名無しさん
垢版 |
2023/01/06(金) 11:09:49.68ID:oG71Qopd
>>717
普通
thiserrorのドキュメント見るといい
727デフォルトの名無しさん
垢版 |
2023/01/06(金) 11:11:24.59ID:oG71Qopd
>>723
俺もメジャーな言語ならSwiftが一番近いと思う
728デフォルトの名無しさん
垢版 |
2023/01/06(金) 11:25:37.00ID:3gqx/ngg
Kotlin/Nativeもポインタ触れたりして結構似てるぞい
根幹をC++で作ってるから当たり前なんだけどもw
729デフォルトの名無しさん
垢版 |
2023/01/06(金) 11:26:31.04ID:3gqx/ngg
Swiftと比べたらKotlin/Native とか下の中の下ではあるがw
730デフォルトの名無しさん
垢版 |
2023/01/06(金) 11:51:53.71ID:6RDP1hdo
zigのcomptimeが他言語でもほしいです
2023/01/06(金) 14:03:28.15ID:jehUaEn+
Rustは型チェッカが厳しすぎるからゴミ言語
732デフォルトの名無しさん
垢版 |
2023/01/06(金) 14:04:50.34ID:+8Hk5pSO
厳しすぎる??
2023/01/06(金) 14:05:57.12ID:jehUaEn+
普通にocamlとかのそこらの関数型言語よりはるかに厳しい
2023/01/06(金) 14:36:09.35ID:s69F+oI7
たぶん型チェックではない気がするけどコンパイラのチェックが厳しいとゴミ言語になる理由がよく分からない
何となくで書けないのが不満なのかクラッシュバグを量産できないのが不満なのか
C言語でも-Wallとか-Werrorをつければ結構コンパイラうるさいよ

RustとCが近いと感じるのは脳内で同等のコードをイメージしやすいからかな
RustとC++はそんなに近いとは思わない(被ってる部分もあるけど別方向に派生したC言語という感じ)
2023/01/06(金) 14:40:01.34ID:rO9XvLaF
>>733
具体的には?OCamlではどうでRustではどうって例ある?
2023/01/06(金) 14:48:19.40ID:17lyPwSx
>>734
>RustとCが近いと感じるのは脳内で同等のコードをイメージしやすいからかな
近いとは思わんけどな。
2023/01/06(金) 14:50:54.43ID:jehUaEn+
>>734
Rustほど型チェッカを厳しめにしなくても
安全なプログラムは実現できる
だからこそRustは流行らない
2023/01/06(金) 14:52:43.20ID:jehUaEn+
>>735
OCamlでは値の寿命を気にしなくていい
GCが管理するから
後はRustとは違って型推論をさせるコツというのが少ない
2023/01/06(金) 14:56:59.14ID:WgqbE23F
>>715
これ、ねらったトリップを出せるってこと?
どうやるの?
2023/01/06(金) 15:15:47.67ID:pLqfOblc
毎日似たようなやつ出てくるな
2023/01/06(金) 15:30:04.53ID:eVJa6RQn
向こうで聞けよ
https://i.imgur.com/cQKkRzG.png
http://hissi.org/read.php/tech/20230102/Y3FtNVJpZ20.html
http://mevius.5ch.net/test/read.cgi/tech/1588748438/1000
742デフォルトの名無しさん
垢版 |
2023/01/06(金) 15:32:03.05ID:Kzld2VSs
>>738
暗黙的に型変換されることが多いという話なのか?
でなければどっちも型チェックの話じゃないと思うんだが
2023/01/06(金) 15:40:58.01ID:rO9XvLaF
>>738
> 後はRustとは違って型推論をさせるコツというのが少ない

(´・∀・`)ヘー
でも少ないどころかOCamlに
「型推論をさせるコツ」なんてもんがそもそもあっただろうか…

型チェッカがどうこうは実は今もよくわからんけど
型の推論はRustのほうが数段ショボい感じ
「型推論をさせるコツ」とかいう話も大変Rustっぽい
2023/01/06(金) 15:54:57.11ID:17lyPwSx
「Rustを勉強したい」「WasmをRustで決まり」みたいな話ばかりで
実際に作ってる人がほぼ居ないのがRust。
745デフォルトの名無しさん
垢版 |
2023/01/06(金) 16:18:23.51ID:ka2uAVZR
rust も ocaml も型推論はHindley Milnerベースだろ。
rustで厳しいのはボローチェックやライフタイムのせいじゃないの?
それらも型に含める?広義では含むか、でも狭義にはちょと違うような。
2023/01/06(金) 16:52:55.39ID:1HBuA6S6
ボローチェックやライフタイムをそこまで低レイヤー向けじゃない言語に入れてみた方が需要あるんじゃないかね。
2023/01/06(金) 17:37:26.05ID:sXnz8uH8
低レイヤー向けじゃないならGC使えばいいんだからライフタイムチェックなんてする意味無くね
2023/01/06(金) 17:45:15.81ID:bmHmWdW4
意図しない変数書き換えはGCで防げないと思う
2023/01/06(金) 18:18:03.78ID:4UTCkTyw
>>745
hindly milnerベースって言っても使い勝手が違う
rustは関連型という機能があるからocamlのように型推論が強力なわけではない
あと推論順序の影響を受ける
750デフォルトの名無しさん
垢版 |
2023/01/06(金) 18:31:21.73ID:fURAHMja
>>719
アイデアをまるパクりしてるので、同じに見える人も居るだろう。
文法が似てるとかではなく。
2023/01/06(金) 18:52:06.69ID:/TzNSUVA
プロファイラーの皆さん鑑定お願いします

Cyclonベースのセマンティクスでホラ吹いてた複オジ
https://mevius.5ch.net/test/read.cgi/tech/1663409149/352
https://mevius.5ch.net/test/read.cgi/tech/1670663822/713
イキ〇トリップオジ
https://i.imgur.com/c9uHodQ.png
https://mevius.5ch.net/test/read.cgi/tech/1672635305/17
2023/01/06(金) 18:52:10.12ID:BFPx2dVd
しかし、Rustが流行ってよかったよ。
ScalaやHaskellみたいなモナモナした言語が未来って言われても全然ピンとこなかったからな。
2023/01/06(金) 19:08:18.00ID:t6RUMnc7
プロファイラーの皆さん鑑定お願いします

何やってるのかと思ったら、何やってんだか、オジ
https://i.imgur.com/Ug1VIIs.png
2023/01/06(金) 20:49:12.83ID:AnNs2Aua
くそーCreateProcessWがGetLastError=87で動かねぇ・・・
昔も苦労させられた記憶があるし結構鬼門なんだよなー
2023/01/06(金) 21:03:28.10ID:s69F+oI7
>>752
OptionとかResult返すときの?オペレータは実質モナドなんだけど
モナドって言葉を使わなければみんな平気なんだろう

>>754
Win32 APIって今も32bit?
ワードサイズで引っ掛かった記憶があるようなないような
2023/01/06(金) 21:18:35.59ID:AnNs2Aua
>>755
PEヘッダ確認してみたけどちゃんとAMD64になっている
ポインタは8バイト、BOOL/DWORDは4バイトでいいはず
757デフォルトの名無しさん
垢版 |
2023/01/06(金) 21:37:34.65ID:11CvjFzC
>>753
RustをWeb系で使ってるとか豪語してたよww
個人の趣味スクレイピングをWeb系と言う虚勢にクスクスさせてもらった
758デフォルトの名無しさん
垢版 |
2023/01/06(金) 21:46:50.80ID:+u5r9Ozg
Web系はフロントはTypeScript/JavaScript、サーバーサイドはGoしか有り得ない
2023/01/06(金) 22:09:16.12ID:AnNs2Aua
#[link(name = "kernel32")]
extern "stdcall" {
fn CreateProcessW (
lpApplicationName: *mut u16,
lpCommandLine: u64,
lpProcessAttributes: u64,
lpThreadAttributes: u64,
bInheritHandles: u32,
dwCreationFlags: u32,
lpCurrentDirectory: u64,
lpStartupInfo: *const u8,
lpProcessInformation: *mut u8
) -> u32;
}

fn main() {
let mut cl:[u16; 5] = [0x63, 0x61, 0x6c, 0x63, 0x00]; // "calc\0"
let mut si:[u8; 104] = [0; 104];
si[0] = 104;
let mut pi:[u8; 24] = [0; 24];
let mut ret;
unsafe {ret = CreateProcessW (cl.as_mut_ptr(), 0, 0, 0, 0, 0, 0, si.as_ptr(), pi.as_mut_ptr());}
}
>error: process didn't exit successfully: `target\debug\test03.exe` (exit code: 0xc0000005, STATUS_ACCESS_VIOLATION)
ここまで単純化しても動かねぇ・・・というかsiとpiの正しいサイズがわからない
2023/01/06(金) 23:17:27.61ID:AnNs2Aua
よーくみたら引数が1個足りなかったw コピペ時にガバったか
761デフォルトの名無しさん
垢版 |
2023/01/06(金) 23:35:04.42ID:aB3JGFOO
The Book 10.1に掲載されていたlargest関数を、
参照でかけたりしないのかなと思い試しているのですがうまくいきません。。
どうやって書いたらよいのでしょう?
fn largest<T: PartialOrd + Copy>(list: &[T]) -> &T {
let mut res: &T = &list[0];
for &elem in list.iter() {
if elem > *res {
res = &elem;
}
}
res
}
2023/01/06(金) 23:37:50.69ID:AnNs2Aua
今度はWaitForSingleObjectで止まらない。というか
ttps://learn.microsoft.com/ja-jp/windows/win32/procthread/creating-processes
これをコピペしてコンパイルして電卓を起動させても止まらない。どうなっているのw
って思ったらcalc.exeはラッパーで即終了していたというオチ。MSはロクなことしないな
2023/01/06(金) 23:51:15.52ID:sXnz8uH8
>>762
>>759を動かそうとしてるんなら"calc\0"は第1引数じゃなくて第2引数よ
もうちょっと落ち着いて色々見直しなさいな
764デフォルトの名無しさん
垢版 |
2023/01/06(金) 23:53:05.97ID:/3LWOZ61
>>761
10.1に書いてるコードがすでに参照使って書いてるじゃん
PartialOrd足せばそのまま動くけど?
2023/01/07(土) 00:26:35.07ID:+QPNW5aO
>>763
MSDNを見る限り単にアプリを起動するだけなら第一引数でも第二引数(読み込み専用不可)でも大差なくない?
動くようになった状態で入れ替えても問題なく動作するし
2023/01/07(土) 01:02:32.01ID:dLMo+qnq
>>765
こっちじゃ第1引数使うなら"C:\\Windows\\system32\\calc.exe\0"以外は
GetLastError()が2(ERROR_PATH_NOT_FOUND)を返してきて動かんのだけど……
MSDNも第1引数の説明にだけパス検索はしないだの拡張子つけろだの書いてあって、その通りに動作してるだけのように見えるし

https://learn.microsoft.com/en-us/windows/win32/api/processthreadsapi/nf-processthreadsapi-createprocessw

> The function will not use the search path. This parameter must include the file name extension; no default extension is assumed.
2023/01/07(土) 01:04:28.02ID:piTlebRA
>>761
とりあえず修正したコード

fn largest<T: PartialOrd>(list: &[T]) -> &T {
let mut res: &T = &list[0];
for elem in list.iter() {
if *elem > *res {
res = elem;
}
}
res
}

forの変数elemの型が諸々の事情でTになってたから&Tに直した
ついでにTのCopyもいらなくなりそうだから外した

letとかも同じだけど
let &x = ...
みたいに受け取る側に&をつけるとxの型は入れる値の&を外した型になる(とても雑な説明)
2023/01/07(土) 01:08:28.51ID:4uiRCztN
iter().min::<T>()みたいにかけないっけ
うんこまん
2023/01/07(土) 01:32:02.10ID:kRb596bj
>>767
ありがとうー
そういう仕組みなのね。勉強します
2023/01/07(土) 01:44:37.82ID:BXkfdHSu
>>769
そのへんはパターンマッチと同じ理屈で解釈されるよ。
2023/01/07(土) 02:06:28.88ID:+QPNW5aO
・system()っぽい関数(起動したプロセスが終了するまでブロックする)
・CreateProcessW失敗時は起動失敗を呼び出し元に通知したい
・成功時に戻すべき情報はない
・Rust的にはResultを返すのが定石?
こういう時のコーディング例とかググっても全然出てこなくね・・・
重要なのはOk/Errのみで返り値は不要みたいなケース
とりあえずbool返しにしておくか

>>766
あれ?確かに。すまん気のせいだったっぽい
772デフォルトの名無しさん
垢版 |
2023/01/07(土) 02:31:58.39ID:6JfdJVIo
>>767
> if *elem > *res {
if elem > res でいいよね
773デフォルトの名無しさん
垢版 |
2023/01/07(土) 02:40:46.97ID:nUzzs5ki
古い劣化日本語訳を読んじゃってるみたいね
最低限本物のThe Bookを参照してから質問しよう
https://doc.rust-lang.org/book/ch10-01-syntax.html
2023/01/07(土) 11:49:37.35ID:TSp0PKQI
>>747
変数間でのオブジェクトの共有が気になるシチュエーションはjavaなんかは結構あると思う。
2023/01/07(土) 16:25:18.46ID:dLMo+qnq
rust-analyzerにもVSみたいにドロップダウンでplatform切り替える機能ほしいのう
cfgで複数のplatformに対応しているタイプのライブラリで便利そう
2023/01/07(土) 16:40:32.23ID:+QPNW5aO
継続不可能な状態→エラーダイアログを表示
ここまではいいけどこの後の後始末ってどう書くのがいいんだろうな
後始末のために共有データ(起動時に設定ファイルから読み込む)にアクセスしたいが
Dropトレイトにしろパニックハンドラにしろmainとは別スコープなのでアクセスできない
後始末のスコープ中で共有データを読み直すという手もあるけど、本当に意図しない状態で
強制終了する場合にファイルのロード&パースをするのが望ましいとは思えない
Dropトレイトの初期化時に共有データの参照を渡しておくとか?
2023/01/07(土) 17:10:37.53ID:piTlebRA
>>776
mainの中で初期化してResultを返す本処理を呼ぶ形は無理?

fn main() {
// 初期化(設定読み込み)
let info = ...;

// 本処理
let result = main_body(&info);
match result {
OK(_) => {}
Err(e) => {
// エラー処理(info使える)
}
}
}
2023/01/07(土) 18:02:32.48ID:+QPNW5aO
>>777
それコードの位置が逆なだけじゃ。というかResult返しの実装方法を理解できていない
とりあえず共有データを保持している構造体にdropを実装してみた
自身へのアクセスは可能だしmainの終了時に実行される・・・はず
779デフォルトの名無しさん
垢版 |
2023/01/07(土) 18:21:41.85ID:S1LntPIN
>>777
よくこの文章を解釈できたな
素直にすごいわ
2023/01/08(日) 00:10:22.65ID:lAEXMGQ2
Rustってゲームに向いてそうなイメージあるけどどうなんだろ
メモリリークは相当起きにくいよな?
2023/01/08(日) 00:39:44.59ID:li8iVC1C
ゲーム開発はトリッキーな手品も使うだろうから向いてないんじゃないか
2023/01/08(日) 00:51:12.10ID:RrQeMuL+
今のご時世に非標準的な実装をするゲームとかOSのバージョンアップで爆死する未来が見える
2023/01/08(日) 01:11:48.94ID:WtSMxRkj
>>782
OSに関係無いところでのトリッキーなテクニックは有りえる。
例えば、複数のポインタ用のバッファをまとめてnewで確保してから、
直後に値を代入するようなことはC/C++では簡単に行なえる。
ところが安全性重視の言語だと、非初期化状態のポインタは許されないから、
少なくともnew演算子が自力でNULL初期化しなくてはならないので、
無駄になる。
他にも、配列の範囲チェックが無駄になる。
2023/01/08(日) 01:15:49.98ID:WtSMxRkj
>>783
ちなみに、
「非初期化状態の変数」は不安定になり易いので減らした方が良いとされているが、
BYTE *dst = new BYTE[1024]; // dst[k] はこの時点では未初期化状態
memcpy( dst, src, size );
のような時にはC++では効率を考えると仕方が無いものと考えられている。
0初期化すると無駄になるから。
785デフォルトの名無しさん
垢版 |
2023/01/08(日) 01:45:10.78ID:f5aNmtma
ヒープでいいならVec::with_capacityしてデータ入れた後にBoxed sliceにすればいい話だね
スタックでゼロ初期化した方が性能はいいと思うけど
2023/01/08(日) 02:04:33.63ID:DAo3J3pj
Box<dyn T>はBox<dyn T + 'static>のライフタイム省略版って聞いてたのに片方だけエラーになる
なんじゃこりゃ

https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=21ad8deab1cb8fb311aeed2ee668bf71
2023/01/08(日) 02:36:10.85ID:x4fu54u1
Rustのメモリ安全性にはメモリリークしないことは含まれていないんだよね。
Rc<T>で循環参照するデータを作ってもコンパイルエラーにはならずメモリが解放されないままだったはず。
まぁメモリリークしててもメモリがある限り正しい結果を返すわけだし、メモリがなくなったらクラッシュするので間違いが起きたまま動作しつづけることはないけど。
788デフォルトの名無しさん
垢版 |
2023/01/08(日) 02:55:51.04ID:fOddL1iF
Rustは例えばGodotではGDScriptが実質Rustだし相当ゲーム制作に向いてる
https://gitlab.com/the-SSD/gdscript-compiler
789デフォルトの名無しさん
垢版 |
2023/01/08(日) 04:35:49.54ID:kuKYL1oy
>>786
なんじゃそりゃ
どこでそんなデタラメ仕入れてきたの?
790デフォルトの名無しさん
垢版 |
2023/01/08(日) 06:55:53.23ID:FeGYfhwG
技術評論社の書籍だろ。
2023/01/08(日) 11:05:23.60ID:DAo3J3pj
>>789
The Rust Referenceだった
この本デタラメなん?
https://doc.rust-lang.org/reference/lifetime-elision.html#default-trait-object-lifetimes
792デフォルトの名無しさん
垢版 |
2023/01/08(日) 11:05:27.68ID:wpyfySyl
>>781
そういう部分だけunsafe使えばいい。
unsafeダメ原理主義者になるな。
2023/01/08(日) 11:21:27.20ID:D257opQI
>>791
そこにはライフタイム省略版とは書いてないよ
expressionなどからライフタイムを推論できない場合はstaticになると書いてある
(例えばコード例のようなタイプエイリアスの場合など)
playgroundのコードではu2のライフタイムから推論されるからstaticにはならない
794デフォルトの名無しさん
垢版 |
2023/01/08(日) 11:35:19.20ID:4wy9Fp4t
>>791
これでしょ?

If the trait object is used as a type argument of a generic type then the containing type is first used to try to infer a bound.

If there is a unique bound from the containing type then that is the default
2023/01/08(日) 11:50:51.08ID:DAo3J3pj
>>793
は〜んなるほどな
関数引数とか構造体メンバとかの'staticに推論される場所で使うことが多かったから勘違いしてたっぽい
ありがとう
2023/01/08(日) 12:37:06.99ID:RrQeMuL+
みんな大好きUnityなどと比べたらRust由来の効率低下なんて微々たるもの
797デフォルトの名無しさん
垢版 |
2023/01/08(日) 13:59:02.14ID:UBD4N3HA
https://cdn.discordapp.com/attachments/953965039105232906/1061347007664500737/knhtsxphnnaa1.jpg
798デフォルトの名無しさん
垢版 |
2023/01/08(日) 14:01:25.73ID:tWJ5hYnn
https://lr.mint.lgbt/img/knhtsxphnnaa1.jpg
2023/01/08(日) 14:08:03.69ID:OlteebrS
>>796
それは言語としての魅力があればの話。
2023/01/08(日) 15:57:06.75ID:LmL7tvTF
>>797
安心安全だなあ
2023/01/08(日) 16:08:08.46ID:vMQQXEk1
>>797
unsafeの絵面ヤバくて草
2023/01/08(日) 16:09:10.68ID:VztT2gmz
unsafeで書いたほうがコンパイル速度速くて好き
2023/01/08(日) 16:30:50.12ID:9eCFH/Xi
せめてunsafeの間くらいは起こしてやれよ
2023/01/08(日) 19:26:34.22ID:2yRrU7ur
Rustで多量のファイルを高速に読み込みたい場合ってどうすればいいの?
std::fs::readはVec<u8>を返す=メモリアロケータが動く=遅い
十分なサイズのVecを事前に確保してreadなりReadFileなりを叩けば
任意のアドレスに読み込んでくれるけどほかに方法はないのかな
2023/01/08(日) 20:32:01.24ID:9eCFH/Xi
Rustに限らずreadで遅いと感じるレベルならOS依存のmmap(memmap)くらいしか思いつかない
速さ目的で使ったことないから本当に速くなるか分からないけど
2023/01/08(日) 21:00:35.09ID:gNhHKSa0
The Book を進めていくと Box<trait> でエラーになって Box<dyn trait> に変えろって言われるんだけど、dyn ってなんですか?
2023/01/08(日) 21:02:45.41ID:lAEXMGQ2
動的 ダイナミック
実行時に決まる的な
2023/01/08(日) 21:06:58.13ID:gNhHKSa0
>>807
なるほど
trait は動的なのでより明確になるように dyn キーワードが追加された... という理解でいいでしょうか?
2023/01/08(日) 21:11:02.19ID:rBa/PYaz
>>805
1MB/1000個くらいのファイルをstd::fs::readで読みながらVec[u8]に
extend_from_sliceで追加していくコードを書いてみたら数秒かかった
さすがに遅すぎ
せめてVec<u8>→Vec<u8>(の任意のインデックス)みたいなmemcpy的な
コピー手段はないのなか。どのくらい早くなるかわからんが
2023/01/08(日) 21:31:03.29ID:LKKCPrwt
>>809
>1MB/1000個くらいのファイル
これはどういう意味?
/ は、割る、または、OR(または) の意味で用いる。
もしかして、
一個当り 1MB のファイルが 1000 個、合計サイズ 1GB の
ファイルのことを言っている?
2023/01/08(日) 21:32:08.52ID:LKKCPrwt
>>810
ちなみに、そのくらい巨大になると、Rustの「安全機構」は体感速度に
まで影響する。
2023/01/08(日) 21:37:22.02ID:Ot3XQ+MC
>>810
わかりにくくてすまん。ファイル総数1000程度、合計サイズ1MB程度
2023/01/08(日) 21:51:35.12ID:iCNAe1YS
>>809
リリースビルドでその速度?
2023/01/08(日) 21:52:13.93ID:lAEXMGQ2
>>808
間違えてるかもしれんが俺の理解だと
>>traitは動的
traitは静的だけど、trait実装してる型が静的/動的に決まるかで
動的→dyn Trait 静的→ジェネリクスやimpl Trait を使い分ける
よくある例では
Vec<T>はT1つ確定して他の型は一切受け付けないけど
Vec<Box<dyn Trait>>はTraitを実装してる型なら何でも入る
2023/01/08(日) 22:01:47.30ID:gNhHKSa0
>>814
分かりやすい説明でなんとなく理解できた気がする
ありがとう
816デフォルトの名無しさん
垢版 |
2023/01/08(日) 22:13:49.41ID:V1l2P4XZ
>>806
いい加減に本物のThe Book読めよ
ちゃんと説明されてるだろ?
https://doc.rust-lang.org/book/ch17-02-trait-objects.html
817デフォルトの名無しさん
垢版 |
2023/01/08(日) 22:45:09.72ID:HTBsXmSw
>>809
extend_from_sliceだと遅そうだね
io::copyにしてみれば?

ちなみにその1000個をcpしたらどの程度で終わる環境?
2023/01/08(日) 22:48:55.19ID:9eCFH/Xi
>>809
memcpyと同じことしたいならstd::ptrにcopyとかcopy_nonoverlappingが用意されてる
ただ引数はポインタだからunsafe

copy_nonoverlappingのExamplesがやりたいことに近いと思う
この例はコピー元のVecを空にしてるけどu8みたいなCopy型に限定すればコピー元のVecをそのままにしても一応安全
2023/01/08(日) 22:52:59.71ID:9eCFH/Xi
818追記
コピー元が空になっても構わないならVec::appendで同じことができる
2023/01/08(日) 23:03:17.84ID:OD5QAUK5
>>817-819
ありがと。試してみます

エクスプローラーから同ドライブへのコピーで数秒ってところでしょうか
2023/01/09(月) 00:21:25.60ID:L9fsJfRH
>>812
1000個のファイルで1秒だと、もともとOSの速度がその程度の場合も有り得そう。
1ファイル当り1(ms)ということになるから。
もともとファイルはそこまで一度に沢山の個数をopen, closeすることは
想定されて無いので。
それもRustの安全機構が遅さに影響を与えているかも。
2023/01/09(月) 00:26:23.50ID:L9fsJfRH
>>821
ファイルって、例えばファイラーでコピーする場合でも、合計が同じ容量でも、
細かいファイルが多数有る場合の方がずっと遅くなる。
一個の1MBのファイルをコピーすると一瞬なのに、1KBの1000個のファイルをコピー
すると1秒くらい掛かるかも。
823デフォルトの名無しさん
垢版 |
2023/01/09(月) 01:18:38.59ID:1jv8LwEE
profilingしてsyscallがボトルネックになってれば非同期や並列化で高速化するしかない
2023/01/09(月) 10:40:30.18ID:qWwsdzcu
たとえどんなにメモリ確保が遅くともディスクIOよりも遅いってことはないだろう
体感の遅さが何秒とかじゃなくてドライブのベンチマークと比べて判断しよう
2023/01/09(月) 10:58:52.04ID:SSufLxQW
>>820
エクスプローラーってことはWindows?
そもそもWindowsはファイルシステムのsyscallが結構重いから
メモリコピーとか関係なくそんなものの可能性はあるかと
思い込みで試行錯誤してないでちゃんとプロファイル取ったほうがいいよ
2023/01/09(月) 15:14:46.56ID:eWb8PeTD
cargo testでドキュメントテストが実行されないんだけどお前らも同じ?
ドキュメントに書いてある通りに実行してるけど実行されない
2023/01/09(月) 15:29:11.68ID:Tw59sECy
>>826
普通に実行されるから doctest の書き方間違えてるんじゃないのかなぁ
`(バッククォート) じゃなくて '(シングルクォート) になってるとか
2023/01/09(月) 15:35:17.32ID:eWb8PeTD
>>827
ああ、すみません。解決しました。
どうもバイナリだと実行されないみたいです。

cargo new myprog

で作成したバイナリだと駄目で

cargo new doclib --lib

で作成したライブラリではちゃんと実行されました。
2023/01/09(月) 15:52:28.38ID:Tw59sECy
>>828
おお、本当ですね... なんでこういう動きなんだろう、分かる人いないかな?
2023/01/09(月) 17:51:48.91ID:ytPnwm3y
Rust固有の話でもないんだけどUnicode対応のアーカイブフォーマットってどんなのがあるんだろ
比較的新しい7zipはUnicodeファイル名をサポートしているけどライブラリやクレートが豊富とはいいがたい
かといってレガシーなzipやtarだとファイル名のコーディングは実装依存にみえる
実装依存の場合Unicodeファイル名をサポートしているライブラリやクレートがあるのかという問題も出てくるし
2023/01/09(月) 19:37:23.02ID:ytPnwm3y
tarで実験していたら詰んだw
let mut v:Vec<u8> = Vec::new();
let mut c = std::io::Cursor::new(v);
let mut t = tar::Builder::new(c);
t.append_path("foo.txt");
std::fs::write("foo.tar", &v); // borrow of moved value: `v`
どうしろと・・・
2023/01/09(月) 19:48:59.36ID:qp/cfIgC
>>830
zip も特定のビットを立てていればファイル名が UTF-8 ということになる。
https://pkware.cachefly.net/webdocs/APPNOTE/APPNOTE-6.3.10.TXT
項目 4.4.4 で説明されている Bit 11 を見て。
2023/01/09(月) 19:50:26.02ID:FCxfWiS9
>>831
なにがしたいんこれ
2023/01/09(月) 20:12:49.13ID:NBV9jC+W
mut大好きそう
2023/01/09(月) 20:21:20.61ID:ytPnwm3y
>>833
オンメモリでtarを作って出来上がったものをファイルに保存したい
2023/01/09(月) 20:46:41.39ID:vdwHQqNl
tar使ったことないけどt.get_ref().get_ref()で&Vec<u8>取り出せるのかな
先にt.finish()呼ぶべきかもしれないしget_refよりinto_innerの方がいいかもしれない

get_refは詰み回避の頻出手筋
2023/01/09(月) 21:28:27.40ID:ytPnwm3y
>>836
let a = t.get_ref().get_ref();
std::fs::write("foo.tar", a);
これは一応それっぽいファイルが作られた

let mut a = t.into_inner().unwrap();
let mut f = std::fs::File::create("foo.tar").unwrap();
std::io::copy(&mut a, &mut f);
こっちは空っぽだった

ttps://crates.io/crates/tar
こんなサンプルしかないしCursorを使用する例なんて見当たらないし
どうやるのが妥当なのか全くわからん
2023/01/09(月) 22:00:04.05ID:ytPnwm3y
ttps://docs.rs/tar/latest/tar/struct.Builder.html#method.append_path
>pub fn append_path<P: AsRef<Path>>(&mut self, path: P) -> Result<()>
>~
>Also note that after all files have been written to an archive the finish function needs to be called to finish writing the archive.
らしいが
>pub fn finish(&mut self) -> Result<()>
>~
>In most situations the into_inner method should be preferred.
どっちなんだよw
ここに載っているサンプルだってinto_innerもfinishも呼んでいないのがあるし
2023/01/09(月) 23:33:14.26ID:2xcnkP4M
>>835
もう解決してそうだけど
let mut c = ...からt.append_path(...)までを別スコープにすれば通らない?
2023/01/10(火) 00:39:55.01ID:j3UGlM4K
>>837
空っぽになるのはtarのinto_innerでfinish経由でwrite_allが呼ばれて
cursorのpositionが末尾になっててio::copy時には書き出すものがないから
2023/01/10(火) 00:49:25.83ID:j3UGlM4K
t.append_pathしたタイミングでcursor.position進んでたわ
そりゃそうか
2023/01/10(火) 01:07:25.76ID:LMu5FpAe
let mut v = Vec::new();
let c = std::io::Cursor::new(&mut v);
let mut t = tar::Builder::new(c);
t.append_path("foo.txt");
t.finish();
drop(t);
std::fs::write("foo.tar", &v);
843デフォルトの名無しさん
垢版 |
2023/01/10(火) 01:15:57.75ID:MfXPDJ7e
get_mutでCursorにすればReaderとして使える
2023/01/10(火) 02:21:46.49ID:UwgiY8HJ
そのコードでCursor使う意味が分からん
let mut tar = tar::Builder::new(Vec::new());
tar.append_path("foo.txt").unwrap();
let body = tar.into_inner().unwrap();
std::fs::write("foo.tar", body).unwrap();
845デフォルトの名無しさん
垢版 |
2023/01/10(火) 03:54:21.65ID:jTn98fgX
昨日のファイル1000個の続きなんじゃね
メモリに全部読読み込んでから処理しようとする理由は謎
2023/01/10(火) 11:07:15.73ID:UY3YN64G
The Bookをやり終えたあとってどうするのがいい?
次に読むべきおすすめの書籍があるか知りたいです!
847デフォルトの名無しさん
垢版 |
2023/01/10(火) 13:00:32.37ID:wZlueyRK
>>846
次の書籍を読む前にThe Bookの復習がてら簡単なCLIツールを3~5個くらい書いて自分の理解を確かめたほうがいいよ
2023/01/10(火) 16:48:39.24ID:UY3YN64G
>>847
アドバイスありがとうございます!
とりあえず何かしら作ってみようと思います
849デフォルトの名無しさん
垢版 |
2023/01/10(火) 17:29:32.58ID:0JcDinm0
コマンドラインに渡した(1000個の)ファイルを
指定した名前のtarファイルに書き出すツールとか
2023/01/10(火) 18:47:02.53ID:jt9UZCSx
>>845
メモリを事前に一括で確保してVecの逐次伸長をなくせば早くなるんじゃね?
と思ったけど実験してみたら全くそんなことはなかった。Rustのメモリアロケータって優秀なんだな・・・
2023/01/10(火) 19:01:05.30ID:ICakwhma
何使ってんのかな
mallocかな
852デフォルトの名無しさん
垢版 |
2023/01/10(火) 21:06:19.40ID:doG42uyJ
10回程度の小さい容量のアロケートなんてI/Oに比べれば微々たるものでしょ
2023/01/11(水) 14:35:14.84ID:PmiCGwmF
Vecのcapacityって再確保のたびに倍々に増えていくんじゃなかったっけ
ならpushの回数を増やしても再確保回数は大した数字にならないだろう
2023/01/11(水) 19:26:52.32ID:STTwcLZn
ドライブレターを割り当ててあるネットワークドライブのパスを
dunce::canonicalizeに食わせるとUNCパスが返ってくる
そりゃねーぜ・・・
855デフォルトの名無しさん
垢版 |
2023/01/11(水) 21:38:38.39ID:+7dhpYN+
こういう瑣末な問題を自分で解決する力のない人はまだRustを使うべき時期じゃないよね
2023/01/11(水) 23:08:05.53ID:STTwcLZn
というかLinuxのProtonだとネットワークドライブへのアクセスでも
ドライブレタースタートのパスが返ってくるのな
結果、Windowsだと動かないけどLinuxなら動くという珍事になってるw
857デフォルトの名無しさん
垢版 |
2023/01/12(木) 09:12:37.07ID:KDs8BtvS
ファイル属性の取得はファイル読み込みよりは圧倒的に速いので
・ファイル名とファイルサイズの取得
・合計サイズのチェックと領域の確保
の順でやればマシかもね
ファイル読み込みに比べたら微々たる違いだとは思うが
858デフォルトの名無しさん
垢版 |
2023/01/12(木) 10:55:41.76ID:YWq2QOJT
ファイルの数だけ二重にsyscallを呼び出すことになるからサイズのデカい数ファイルを処理するときならともかく1000ファイルで合計1MBという今回のケースだと悪化するんじゃね?
2023/01/12(木) 11:13:05.66ID:CILc6G1+
ripgrepの実装でも見た方が早そう
2023/01/12(木) 11:37:44.42ID:Iq4TKL6o
>>858
そもそもトータル1MB程度って分かってるなら余裕みて2MB程度確保しとけば良いような気がするが...
861デフォルトの名無しさん
垢版 |
2023/01/12(木) 12:26:48.24ID:lE5eokgZ
>>859
ripgrepは今回のようにすべてのコンテンツを全て一括でメモリに保持するわけじゃないから
streamingで処理するのでいいなら固定長のバッファ確保してそこを使いながらパイプライン通して結果をI/O出力すればいい

>>860
アロケーションがボトルネックならそういう対処もあるだろうけど十中八九違うんじゃね?
2023/01/12(木) 13:42:55.06ID:xHtWNAJz
は?頭悪いの?
2023/01/12(木) 13:53:22.90ID:Iq4TKL6o
>>861
> アロケーションがボトルネックならそういう対処もあるだろうけど十中八九違うんじゃね?
そんなのはみんなわかっててあーだこーだ言ってるわけだがw
864デフォルトの名無しさん
垢版 |
2023/01/12(木) 15:09:30.20ID:xWF9eQpc
>>863
的外れないことを言ってる自覚があるなら>>860みたいなレスはしないだろ
2023/01/12(木) 15:31:26.43ID:Iq4TKL6o
的外れないことって何?w
2023/01/12(木) 21:08:10.25ID:3O2sN+zP
dunce::canonicalizeはダメっぽいのでGetFullPathNameWを使うことにした
ちょうどいいシステムコールが用意されているなら安易に野良クレートを使うより確実な気がしてきた
2023/01/12(木) 22:10:25.12ID:FSx5+7HP
やっぱC言語の方が良くね?
2023/01/12(木) 22:53:08.57ID:SDdlQMcb
というと ?
2023/01/12(木) 22:57:40.51ID:lSbfdb++
いや、知らんけどw
2023/01/13(金) 20:32:09.46ID:GI5Uh2G8
知らないなら言うなよ
2023/01/13(金) 21:11:06.84ID:DJL02dxD
>>844
のコード見るだけでも、Rustは書き味の悪い言語だと思う。
872デフォルトの名無しさん
垢版 |
2023/01/13(金) 21:13:37.70ID:pWxhpTTY
>>871
悪い見本だもの
2023/01/13(金) 21:16:19.91ID:DJL02dxD
>>872
Rust関連の本を何冊か読んだが良いコードは余り無い。
874デフォルトの名無しさん
垢版 |
2023/01/13(金) 21:19:33.92ID:pWxhpTTY
悪い見本だと判別できない時点でろくな本を読んでないことが分かる
875デフォルトの名無しさん
垢版 |
2023/01/13(金) 21:21:43.63ID:URQHLbI7
みんなの参考になるように読んだ本を列挙してみてはどうだ?
2023/01/13(金) 21:26:26.06ID:DJL02dxD
はっきり言ってやろう。Rustは根本的に書き味が悪いんだよ。
2023/01/13(金) 21:29:15.41ID:3E7mF/VV
Rustは苦痛を感じるためのドM言語ってこと、忘れてないか?
878デフォルトの名無しさん
垢版 |
2023/01/13(金) 21:29:53.28ID:AezcW3Li
>>876
じゃ君が思う根本的に書き味が良い言語は何なの?
2023/01/13(金) 21:35:01.32ID:SIYbgDna
>>878
c
2023/01/13(金) 21:47:38.65ID:fPZtp8ym
ワイはJava
2023/01/13(金) 21:48:28.21ID:fPZtp8ym
Kotlin、C#も好き
2023/01/13(金) 22:05:13.48ID:CrbXPD60
ラクダケース派か
PythonとかRustみたいに型と変数でラクダとヘビ使い分けるパターンって名前あるのかな
2023/01/13(金) 22:18:14.76ID:3Mpi9pMF
C#はたしかに何やるのも楽だ
2023/01/13(金) 22:45:44.13ID:JAZ1vLLw
Rustってそもそもコンパイル速度が遅くてダメだわ
2023/01/13(金) 22:48:50.23ID:KppyFlUz
Goはコンパイル最速だからデオキシスのスピードフォルムだな
Rustはディフィンス、Java/C#はノーマルフォルムだな
アタックフォルムは知らん
2023/01/13(金) 23:27:46.90ID:15Xqxl1r
>>878
C, C++, C#, JS, Ruby, Java は、Rustよりは書き味がいい。
2023/01/14(土) 00:10:54.25ID:+bIIgMNd
自分はスネーク派だからJavaとC#は苦手(根本的に書き味が悪い)
Python使用歴が長かったからだと思う
CとC++は何でもありだからどうでもいいけど
TypeScript(JS)も油断するとスネークで書いてたりする
2023/01/14(土) 00:20:05.26ID:7IKvLHvE
スネークとは関係なく、Rustは書き味が悪い。
他のどんな言語にも無い書きにくさ。
Kotlinも書き味が悪いから没落中。
2023/01/14(土) 02:25:09.71ID:aWsdCtiV
汚コード量産言語
2023/01/14(土) 06:19:32.45ID:si/5TbUH
書き味で言うならNimが一番良い。

特にメソッド呼出し構文はNimが一番洗練されていると思う。UFCSとかもっと色々な言語で採用されてほしい。
2023/01/14(土) 10:19:28.23ID:gaUC4cev
でもnimって流行ってないじゃん?
2023/01/14(土) 10:29:27.36ID:qzxpLg1U
nimの構文とか好きな人は好きだろうと思うけど自分は嫌いだし
嫌いな構文をわざわざ使うほどの他の魅力がないんだよなぁ
2023/01/14(土) 11:26:06.77ID:P3G4Bbh6
書き味悪いとか言ってRust使う気全くないのにわざわざRustスレに書き込もうとするのが一番意味不明
2023/01/14(土) 11:58:15.30ID:2TykacFm
>>893
オレもそう思った
意味不明というかアンチスレあるからそっちでやれよ
って感じ
2023/01/14(土) 12:05:24.38ID:mqrlOfYW
わざわざ文句いいに来るおじさんって大抵構ってちゃん
896デフォルトの名無しさん
垢版 |
2023/01/14(土) 13:50:07.41ID:E6EWdIax
「書き味」の良さ悪さの原因を自分なりに考察して言語化してれば多少は議論になるんだけどな

慣れと好みの次元でしか語れないならお爺ちゃんの自分語りでしかないから相手しても無駄
2023/01/14(土) 14:08:44.00ID:CzVWhO4J
そもそもRustはいろいろ我慢して使う言語だし
みんな上に言われて仕方なく使ってる
2023/01/14(土) 14:09:38.67ID:kogkDCJ2
>>896
そんなことしたら、ずるがしこい人達にアイデア盗まれるだけじゃ。
2023/01/14(土) 14:11:13.60ID:kogkDCJ2
何が良くて何が悪いかを発見すること能力こそ重要なのだから。
2023/01/14(土) 14:33:09.89ID:Yhj3VSAm
>>898
糖質おつ
2023/01/14(土) 14:35:58.49ID:osTmo3zd
コンパイラ安全最強はrust
コンパイラ速度最強はgolang
オブジェクト指向設計最強はjava/c#
汎用最強はc/c++
2023/01/14(土) 14:56:30.09ID:on+CIJwd
殆どの言語は高速化に向けて頑張ってるからGo言語の地位は危ういけど、既存の言語をメモリ安全にするのは大変だからRustは安泰
強みがあるって大事
2023/01/14(土) 15:32:55.40ID:3m59wGPl
もう次世代言語スレ立ててこいよ
904デフォルトの名無しさん
垢版 |
2023/01/14(土) 15:40:05.51ID:4KPPIGP6
また次世代言語スレ(旧世代おじいちゃん隔離スレ)が消えたから溜まり場になってるのか
迷惑な話だな
2023/01/14(土) 15:51:18.61ID:yWcHQYoB
rustが次世代言語、、?まじぃ?
2023/01/14(土) 15:55:26.44ID:HwrORXYU
次世代の言語
https://mevius.5ch.net/test/read.cgi/tech/1571717826/
907デフォルトの名無しさん
垢版 |
2023/01/14(土) 17:40:41.95ID:VmfonobT
>>898
アホだろw

「トマトは不味い、俺はりんごが好き」と同程度の話なのにお前がりんごが美味いと感じる理由を説明したらそのアイデアwとやらがが盗まれると思ってんのかww
908デフォルトの名無しさん
垢版 |
2023/01/14(土) 17:48:38.74ID:7aPbxTVe
>>907
まともにrust使ったことないのがまたバレるから誤魔化してるだけでしょ
2023/01/14(土) 18:06:11.45ID:P3G4Bbh6
アイデアってことは書き味のいい最強のプログラミング言語の開発でもしてるんだろうな
2023/01/14(土) 18:36:28.57ID:9ctkhBjT
仮に、あくまでも仮にプログラミング言語を確実に素晴らしくする案があったとして
その案が盗まれて (他の言語に取り入れられて) なんか損なことがあるのか?
世の中に良いものがひとつ増えればありがたい話。
2023/01/14(土) 19:24:05.22ID:s7HfBvg3
車関連のソフトウェア携わってるやつおる?
今年から急にrustの案件増えてきてね?
しかもすごい金かけてる案件が目白押し
うちは4次請け5次受けくらいの立場だからわからないけどこれってTOYOTAとかホンダとかが大元なのか?
2023/01/14(土) 19:34:43.90ID:F1jWkXvh
勘弁してくれよ、、
Google Chrome、プログラミング言語「Rust」の採用を発表
https://news.mynavi.jp/techplus/article/20230113-2561774/
2023/01/14(土) 20:10:33.53ID:2TykacFm
>>911
>>589

世間知らずもほどがある
2023/01/14(土) 20:48:41.86ID:VNfJPmNM
車載での普及はかなり先では
少なくとも今のE/EではCのままでしょ
2023/01/14(土) 20:53:17.78ID:IboOW/fc
>>912
この流れだとedgeやsafariが追随するのは必至か
2023/01/14(土) 21:32:45.87ID:CLO/QXdT
車つってもエンジン制御とUIじゃ全然違くないか
2023/01/14(土) 22:11:15.42ID:QmsxXkaU
>>915
EdgeはChromiumベースじゃん
918デフォルトの名無しさん
垢版 |
2023/01/14(土) 22:11:45.32ID:d5QpUSFx
>>915
edgeはchromiumだから追随も何も自動的にRust採用
chromeの脆弱性の大半はメモリ関連バグが原因なので自然な流れ
919デフォルトの名無しさん
垢版 |
2023/01/14(土) 22:12:14.30ID:d5QpUSFx
ァー!
920デフォルトの名無しさん
垢版 |
2023/01/15(日) 00:41:50.47ID:ku1I9qUG
>>886
Ruby入れんなバカ
921デフォルトの名無しさん
垢版 |
2023/01/15(日) 00:54:56.50ID:ku1I9qUG
>>911
俺もそんぐらいの商流だけど、話は増えてる。

>>914,916
今の車はエンジンやナビ以外も色々電子制御してるんだわ。
んでもって今まさに売るもんじゃなくて、ン年先に出るかもしれないモデルの話。
C/C++のテスト工数がばかんなんないんだわ。
2023/01/15(日) 02:51:25.95ID:KkfkCmPm
Rustは自動車などの人命に関わる部分では人気が高まっていると。
人命に関わるからめんどくさくても仕方が無いと。
2023/01/15(日) 02:56:27.53ID:lfgB9E3M
その話が事実ならルネサスからRustの開発環境が提供されるのも
時間の問題ってこと?(もしくは一部にはすでに提供されている?)
現状組み込み用だとCortex-MやRISC-V用の野良コンパイラと
vscodeあたりを組み合わせるしかないわけだし
2023/01/15(日) 07:17:19.37ID:Fhl5jlzy
ソニー・ホンダのAFEELAとかどうなんだろ?
Rustとか使ってるのかね。


ソニー・ホンダも志向、自動車の「走るスマホ化」
https://toyokeizai.net/articles/-/644484?page=2
ソニー・ホンダモビリティの河野拓・デザイン&ブランド戦略部ゼネラルマネジャーは、AFEELAを「iPhoneにタイヤがついたようなもの」と例える。
2023/01/15(日) 09:01:34.83ID:FWMLffRf
>>921
>>922
914です。ADやゾーンE/Eに向けて採用されていくのは同意。演算能力はマイコンというよりPC

エンジン、ブレーキ、ステアECU等々のマイコン使った従来E/EのECUは人命に関わっていたとしてもCのままだと思うよ
モデルベースでRustのコード生成なんて聞いたことないし
2023/01/15(日) 10:33:03.49ID:xEBlbsta
書き味ってのはオブジェクト指向し易いかどうかってこと?
2023/01/15(日) 11:04:25.61ID:iBpPXbBA
>>924
> ソニー・ホンダモビリティの河野拓・デザイン&ブランド戦略部ゼネラルマネジャーは、AFEELAを「iPhoneにタイヤがついたようなもの」と例える。
そう言うのはECUとか知らない一般向けの宣伝文句だよ
928デフォルトの名無しさん
垢版 |
2023/01/15(日) 11:33:45.74ID:Veh5XioV
命に関わるようなところを4次請け5次請けに出してんの!?
日本マジ終わってんなww
2023/01/15(日) 12:56:35.95ID:XPwcoEw+
>>928
いまさらすぎる
2023/01/15(日) 13:28:39.34ID:9tzHaMX4
仕様書通りにできててテストに合格すればどこに出してもいいでしょ
孫請け以降禁止する契約もあるけど
931デフォルトの名無しさん
垢版 |
2023/01/15(日) 15:27:38.76ID:L+UeRXU0
>>930
言い訳ないだろw
戦略的にも品質的にも生産性的にもあり得ない

仕様書通りにできててテストに合格してればいいという理由でGoogleが自動運転技術の命に関わるような開発を4次請け5次請けに出すと思うか?
シートベルトやエアバッグ作るのとはわけが違うんだよ
2023/01/15(日) 16:08:55.48ID:9tzHaMX4
>>931
だから不安なら禁止すればいいと書いた
2023/01/15(日) 16:09:46.14ID:dEFl4tMA
>>931
GoogleはGoogleの付加価値を提供するために自分たちでやっているだけでしょ
車とそのシステムを作るカーメーカーやTier1が自分でソフト書かなくても品質保証できていれば問題ない。付加価値はそこじゃないから
時代は変わってきてるけどね
2023/01/15(日) 16:13:07.64ID:9tzHaMX4
Rustは メモリ関連のバグが減るからどんだけ下請けに出しても
大丈夫な言語でしょw
935デフォルトの名無しさん
垢版 |
2023/01/15(日) 16:19:04.91ID:kf65JyLn
>>933
そんな考えだから
トヨタですらコードがスパゲッティすぎるという理由で安全性を疑問視され訴訟で負けたりするんだぞ

ソフトウェアというものへの理解が足りない
2023/01/15(日) 16:20:38.88ID:9tzHaMX4
>>935
え? 負けてないけど?
2023/01/15(日) 16:32:56.96ID:x9M0LVrY
fn foo(・・・) -> Path {
>error[E0277]: the size for values of type `[u8]` cannot be known at compilation time
Pathを返したい場合ってどうすればいいの?
Path::newとかはPathを返してくるしPathを返り値とできないってことはないと思うんだけど
2023/01/15(日) 16:38:48.05ID:+F45TDzj
テスラ車を突然襲う「ファントムブレーキ」、米NHTSAが調査に本腰
https://www.gizmodo.jp/2022/02/what-causes-phantom-braking-in-tesla-cars.html
https://www.youtube.com/watch?v=gG2joDBwvUk

調査の対象となる去年と今年の北米市場版Model 3とModel Yは8つのカメラオンリーです。前方の障害物を認識するレーダー(競合EVの間では自動運転に不可欠というのが常識)は装備されていません
2023/01/15(日) 16:56:40.61ID:ENXbg9TW
>>937
Path::new()の戻り値の型は&Path
2023/01/15(日) 17:00:40.85ID:4g2lfxWa
>>935
コードがスパゲッティだと安全性
2023/01/15(日) 17:01:49.92ID:4g2lfxWa
>>935
コードがスパゲッティだと安全性に問題あり→分かる
コードがスパゲッティだと裁判で負ける→そんなわけない
2023/01/15(日) 17:20:01.49ID:c/yAq8vN
>>926
それ以外も全般的に。
943デフォルトの名無しさん
垢版 |
2023/01/15(日) 17:55:36.90ID:5NYA+kvP
>>937
Pathはsliceだから生のままでは返せないよ

Stringとstr
OsStringとOsStr
PathBufとPath
の関係
2023/01/15(日) 17:56:08.44ID:JkaIrkhI
>>939
今度は
>error[E0515]: cannot return value referencing temporary value
そりゃそうだが動的に生成したPathは返せないのか?
2023/01/15(日) 19:17:28.73ID:VFtoNkPd
>>935
rustはスパゲッティーでもメモリは安全安心なんだぞ
2023/01/15(日) 19:40:58.90ID:fK8j/jFh
秘技!unsafe発動!私は無敵になる!
2023/01/15(日) 19:54:34.79ID:m9lyhdrZ
>>944
動的に生成したパス文字列なら生成した文字列を保持するメモリが必要だからPathBufで返す
関数の中で作成したString(OsString)は関数を抜けるといなくなるからそれを参照する&Pathは返せない
どーーーしても&Pathで返したいなら生成した文字列を保持するための&mut OsStringを渡すみたいな技巧が必要

単純に使いたい関数の引数が&Pathなのであれば&PathBufを&Pathとして使える(&Stringが&strになるのと同じ)
2023/01/15(日) 19:58:23.93ID:VFtoNkPd
動的に生成したパスタに見えた
2023/01/15(日) 20:11:32.50ID:XPwcoEw+
>>946
無敵どころか無防備やん
2023/01/15(日) 20:49:39.82ID:m9lyhdrZ
彼の敵はRustコンパイラだから…
2023/01/15(日) 23:14:32.72ID:PFXm7BL+
コンパイラを黙らせることが開発だとでも思ってんのかね
2023/01/15(日) 23:28:08.61ID:lfgB9E3M
日本の仕事の進め方的には遠からず当たっているのでは?
うるさい奴を黙らせればおkみたいな会社は多いだろ
2023/01/15(日) 23:30:43.68ID:PFXm7BL+
そういうアリバイ主義者と静的解析バカの悪魔合体は勘弁願いたいな。
2023/01/16(月) 00:40:29.27ID:kCG1A2Jc
>>947
マジか。結局Pathを全部PathBufに書き換えた
955デフォルトの名無しさん
垢版 |
2023/01/16(月) 01:05:51.67ID:N6G/4L1i
最初の[u8]渡してエラーになってるやつは
&[u8]を渡して&Pathを返す関数にするのが一般的
2023/01/16(月) 08:09:07.68ID:iSnf76Rg
let mut v:Vec::<u8> = Vec::new();
let mut t = tar::Builder::new(v);
と書くと1行目がwarning: variable does not need to be mutableになるんだけど
こういうときってどう書くのがいいのだろうか
コンパイラのチェックや動作に問題がなくても変化する変数をイミュータブルで
宣言するのは可読性が落ちるし
2023/01/16(月) 08:16:50.14ID:uVn9RqoF
>>956
少なくともvは一度も変更せずにtar::Builderにムーブされてしまうのだから
素直にmut取ればいいと思うけど
ムーブ先で将来的に変更される可能性のあるものすべてにmutを付けるというのは
特に可読性良くもないと思う
2023/01/16(月) 08:26:33.56ID:uVn9RqoF
というかその理屈だと
let b = a;
let c = b;
let d = c;
とムーブしたときにdをmutにしたくなったら依存関係を遡って全部にmutつけてまわるのか?
2023/01/16(月) 14:37:28.51ID:2c24Nzcv
Chromium、プログラミング言語「Rust」をサポートへ
https://news.mynavi.jp/article/20230116-2564518/

米Googleは1月12日(現地時間)、これまで展開してきたChromiumプロジェクトにおいて、新しくプログラミング言語「Rust」をサポートしていくと明らかにした。来年にはRustで書かれたコードをChromeのバイナリに含めることができるようになるという。

Rustは、もともとFirefoxなどを提供しているMozillaがブラウザ開発のために作ったプログラミング言語。GoogleはRsutをChromiumに導入する目標として、開発のスピードアップやセキュリティの向上を挙げており、この達成にはRust採用が適切だと言及。
Mozillaのソフトウェア業界への貢献に対して感謝すると述べている。なお、ChromiumにおけるRustのサポートは、しばらくC++からRustへの単一方向に限定するという。
2023/01/16(月) 14:38:46.87ID:hltYF0vb
>>912で既出
2023/01/16(月) 14:39:38.74ID:MPqflB5Z
>>959
おまえさぁ、もうで>>912ですでにでてることをなんでわざわざ書くの?
仕事できないだろお前
2023/01/16(月) 15:01:00.01ID:Lz+ZMLI1
そのための言語だろRustって
ド素人無能の働き者養成ギブスよ
963デフォルトの名無しさん
垢版 |
2023/01/16(月) 15:43:26.07ID:6Q5nPNp3
>>962
古のイキリCOBOLコーダーと同じメンタリティだな
2023/01/16(月) 16:20:01.69ID:qYPB25TW
ところが、COBOLよりC/C++は圧倒的に多くの人に使われて来たはず。
2023/01/16(月) 16:24:22.58ID:TYpkB5sr
Rustももう少しC/C++に寄せてくれたらよかったのにな。
C++をうまく拡張してメモリまわりとかどうにかならんにかな。
maneged C++、、C++/CLI、、、うっ、頭が。
966デフォルトの名無しさん
垢版 |
2023/01/16(月) 16:35:50.18ID:IKYjLHSG
なんでわざわざ避けるべきものに寄せる必要があるんだよ
2023/01/16(月) 16:38:52.96ID:qYPB25TW
Rust好きは、関東の人が世界で一番関東料理が優れていると思い込んでいるみたいな話だな。
2023/01/16(月) 16:41:14.88ID:1njlGWhp
C++ の改定の歴史を見ればわかるだろう。
互換性を維持して便利に改良! なんてやってたらわけのわからん歴史的事情の積み重ねでグダグダになるんだってば。
互換性は絶対要件にしないが似て非なるものという程度の改良だとそれはそれで新しいキメラになるだけだし。

知見を踏まえつつも新しく設計するというくらいでようやくスッキリと整理されたものが出来る。
でも現実はね、現実がそんなに綺麗なもんじゃないからそれに使うプログラミング言語もいくらか汚い部分があるのは仕方がないのや。
Rust の汚い部分は unsafe に集約されてるから簡単に未定義を踏めてしまう C++ より比較的マシって話。
2023/01/16(月) 16:52:33.55ID:qYPB25TW
Rust用語派は同じような話ばかりで、C++の問題点を解決したからRustは良くなっ
たと。しかし、それはfactではない。
970デフォルトの名無しさん
垢版 |
2023/01/16(月) 16:54:19.39ID:1GjRSVL7
関東料理て何だよww
広東なら知ってるが
2023/01/16(月) 16:56:18.44ID:jJu5zsI6
おちんぽからでるしるならしってりゅ
2023/01/16(月) 17:16:54.53ID:qYPB25TW
Rustという英単語から「枯れた」という印象を受けてしまう人も多いんだろうが、
実際のRustの言語定義は、枯れているとは言い難い出来で独自な奇妙で新しいもの。
枯れている=古いが便利 というニュアンスとは全く当てはまってない。
2023/01/16(月) 17:17:45.60ID:UvcYTxKD
え?ゲームじゃないの?
2023/01/16(月) 17:23:10.52ID:/Oj6b8p3
> Rustという英単語から「枯れた」という印象を受けてしまう人も多い

まずこれがおかしい
2023/01/16(月) 17:30:23.05ID:t2tq2J5w
ゲームが検索の邪魔
2023/01/16(月) 17:41:15.13ID:qYPB25TW
北米は fake news の本場だからな。
2023/01/16(月) 19:29:31.29ID:TjR5adpl
>>957-958
イミュータブルで宣言した中身が書き変わってしまうようなコードはムーブ後であったとしても
ttps://doc.rust-lang.org/book/ch03-01-variables-and-mutability.html
このあたりの説明と矛盾しない?

tar::Builder::new()の引数の中身が書き変わらないことを期待されるということはないだろうし
ミュータブルのものだけ通るようになっていた方が宣言と動作が一致すると思うけど
何か不都合があるのだろうか
978デフォルトの名無しさん
垢版 |
2023/01/16(月) 19:41:55.12ID:EhSk+RRY
>>977
変数とその変数が指している先がごっちゃになってる予感。
979デフォルトの名無しさん
垢版 |
2023/01/16(月) 19:46:19.45ID:EhSk+RRY
>>977
あと旧来の変数への代入とletバインディングもごっちゃにしてる予感。
2023/01/16(月) 20:02:08.69ID:WqklweoR
>>977
たぶんmutが値の不変を示しているという理解なんだと思うんだけど
mutはあくまでバインドしてる変数を通して変更操作ができるかどうかしか言ってない
値の不変は型で示されるもので、例えば&[u8]ならそこからどうムーブしようがmutつけ外ししようが値は不変
逆に言うとVec<u8>と宣言した時点で値は可変だと言ってることになる
なのでtar::Builder::newの引数がVec<u8>を取るのは可変を要求していて、宣言と動作が一致している
2023/01/16(月) 23:07:27.01ID:VmI5C27p
んー。
取っ掛かりがいまいち掴めないね。
やる気なんだけど。
2023/01/17(火) 05:20:39.27ID:pHgdxC9n
汚コード増し増し
983デフォルトの名無しさん
垢版 |
2023/01/17(火) 11:45:58.31ID:FU2QjMV4
>>979
そこは従来の宣言+初期化と本質的な違いはないからごっちゃにしてても構わない
984デフォルトの名無しさん
垢版 |
2023/01/17(火) 11:51:09.90ID:1F7zkQ+V
>>980
次スレヨロシッコ
2023/01/17(火) 12:42:09.73ID:nikBFIMQ
Rust part19
https://mevius.5ch.net/test/read.cgi/tech/1673926892/
2023/01/17(火) 18:21:49.35ID:+DkoRQk8
>>978-980
それってC/C++のポインタとポインタが指し示す先にある実体の関係に似ていると思うけど
The Bookのどこに書いてあるんだ?
新しめの言語はC/C++の反省?からかポインタを意識させないようなのが多いと思うし
スカラー型と非スカラー型を明確に区別して扱う必要があるのであればなおさら重要じゃないかな

>>980
動作はわかるけどソースを見たときの直感と動作が一致してるかは疑問
C/C++のconstとかも何が修飾されるのか判りにくいけど同じ問題があると思う
2023/01/17(火) 20:03:43.04ID:kyV1E/lM
>>986
個人的には一貫して直観的だと思うけど、
完全に理解した上で分かりにくいというならしょうがないんじゃない
感じ方は人それぞれだし
2023/01/17(火) 22:12:22.97ID:j3IKCnVq
>>986
変数と値の関係自体は他の言語でも同じだよ
The Bookならここをよく読むのが一番いいと思う
https://doc.rust-lang.org/book/ch02-00-guessing-game-tutorial.html#storing-values-with-variables
2023/01/18(水) 00:25:00.21ID:Pm4bFalo
into_inner() はムーブする、get_ref() はムーブしないという理解で合ってますか?
990デフォルトの名無しさん
垢版 |
2023/01/18(水) 00:51:09.43ID:w7TKdBn9
>>989
命名的にはだいたいそうだろうという予測はつくが正確にはメソッドシグニチャを確認して
2023/01/18(水) 02:24:30.31ID:Pm4bFalo
>>990
わかりました
992デフォルトの名無しさん
垢版 |
2023/01/18(水) 11:01:37.80ID:j7LzfbP6
次スレはワッチョイ有効でどうでしょう
https://mevius.5ch.net/test/read.cgi/tech/1674007100/
993デフォルトの名無しさん
垢版 |
2023/01/18(水) 11:09:32.47ID:pgep9wBY
>>992
既にあるスレ使ってからにしろよ
2023/01/18(水) 12:27:11.63ID:aiZApxd8
>>992
おけ、このスレ完走したらそっちに移ろうか
2023/01/18(水) 12:42:52.69ID:bufcBpA/
ワッチョイいれると原理主義者しか残らなくなるからいらない
特に技術系スレで論理性がなくなるのは致命的
2023/01/18(水) 12:51:28.61ID:XUj03KlL
言うほど論理性があったか?
ワありで別に困らないし、ありとなしで並走して人が多いほうに行くわ
2023/01/18(水) 13:02:48.00ID:Pm4bFalo
ワッショイワッショイ
2023/01/19(木) 01:11:57.37ID:ulObPkyG
>>995
まるで反論になってない
2023/01/19(木) 02:24:17.21ID:9BxYgLng
質問いいですか?
2023/01/19(木) 04:40:51.94ID:2BG8SfY3
ちんちん!シュッシュッ!
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 39日 10時間 23分 50秒
10021002
垢版 |
Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/

▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。