Mozilla発のRust言語のスレ
公式
https://www.rust-lang.org/
https://blog.rust-lang.org/
https://github.com/rust-lang/rust
Web上の実行環境
https://play.rust-lang.org
前スレ
Rust Part6
http://mevius.5ch.net/test/read.cgi/tech/1532714678/
探検
Rust Part7
レス数が900を超えています。1000を超えると表示できなくなるよ。
2019/07/14(日) 23:31:47.54ID:PySyhRf9
845デフォルトの名無しさん
2019/12/26(木) 10:48:13.00ID:s9rWqp86 名古屋コルーチン
846デフォルトの名無しさん
2019/12/27(金) 20:54:40.66ID:zMa/58Jf 軽量「プロセス」とか言い出したのは誰だよ…
847デフォルトの名無しさん
2019/12/27(金) 20:57:38.45ID:zMa/58Jf848デフォルトの名無しさん
2019/12/27(金) 23:08:45.63ID:mZEWK1vc なーにちょっとセグフォったぐらいヘーキヘーキ
849デフォルトの名無しさん
2019/12/27(金) 23:11:02.66ID:uyqJfPGf Rustクソむかつく
訳わからんとこでエラー吐いて遅々として進まない
訳わからんとこでエラー吐いて遅々として進まない
850デフォルトの名無しさん
2019/12/27(金) 23:40:09.93ID:CoHNsOHu それをロンチ後に味わうよりずっといい
851デフォルトの名無しさん
2019/12/27(金) 23:55:25.45ID:URhJW9sD 可能性の塊やぞ
852デフォルトの名無しさん
2019/12/28(土) 09:01:50.45ID:vlOag0kC https://www.redox-os.org/jp/
密かに期待してる
密かに期待してる
853デフォルトの名無しさん
2019/12/28(土) 18:55:04.32ID:IqI7wbUC854デフォルトの名無しさん
2019/12/28(土) 23:58:48.46ID:REPcOsSU >>849
Rust難しいけど相応の対価はあると思うぜ
Rust難しいけど相応の対価はあると思うぜ
855デフォルトの名無しさん
2020/01/01(水) 08:04:30.24ID:6zSEt3Eo 重量プロセス
856デフォルトの名無しさん
2020/01/03(金) 00:21:36.29ID:4CdCqvzm なんか,外部クレートを取ってこれなくなってない?
サーバ側がバグってる?
サーバ側がバグってる?
857856
2020/01/03(金) 00:32:48.86ID:4CdCqvzm858856
2020/01/03(金) 00:40:14.08ID:4CdCqvzm859デフォルトの名無しさん
2020/01/13(月) 02:25:37.87ID:kbEHI+CO C系のワンラインifや?演算子は悪しき文化だと思うこの頃
最近書かれたOSSのコードにも多用されていたりするから笑えない
もちろんRustでそんな邪悪な書き方は許されていないけど
最近書かれたOSSのコードにも多用されていたりするから笑えない
もちろんRustでそんな邪悪な書き方は許されていないけど
860デフォルトの名無しさん
2020/01/13(月) 06:53:45.05ID:j6Sgy/j5 ?演算子が無いとこれができん↓↓↓
const int y = (x > 0) ? 1 : -1;
if文を使うと
int y;
if (x > 0) {
y = 1;
} else {
y = -1;
}
となってyがmutableにせざるおえない
const int y = (x > 0) ? 1 : -1;
if文を使うと
int y;
if (x > 0) {
y = 1;
} else {
y = -1;
}
となってyがmutableにせざるおえない
861デフォルトの名無しさん
2020/01/13(月) 09:12:02.94ID:Xv6FKp77 >>859
Rustは糞だな
それが好きならお前が整形ツール使えばいいだけの話
>>860
> let y = if x == 5 { 10 } else { 15 }; // y: i32
https://doc.rust-jp.rs/the-rust-programming-language-ja/1.6/book/if.html
Rustは糞だな
それが好きならお前が整形ツール使えばいいだけの話
>>860
> let y = if x == 5 { 10 } else { 15 }; // y: i32
https://doc.rust-jp.rs/the-rust-programming-language-ja/1.6/book/if.html
862デフォルトの名無しさん
2020/01/13(月) 09:13:06.23ID:Xv6FKp77 すまん、言い忘れたが、俺は出来るだけ ? を使う派だ
863デフォルトの名無しさん
2020/01/13(月) 15:23:43.45ID:xcD2sz0v そんなカスな書き方にこだわるくらいならconstでなくても困らんくらいに関数きれや。
864デフォルトの名無しさん
2020/01/13(月) 16:29:03.41ID:axFuJyFl C
x = y == a ? A : B
x = y == a ? A : y == b ? B : C
Python
x = A if y == a else B
x = A if y == a else B if y == b else C
優先順が判りにくい
x = y == a ? A : B
x = y == a ? A : y == b ? B : C
Python
x = A if y == a else B
x = A if y == a else B if y == b else C
優先順が判りにくい
865デフォルトの名無しさん
2020/01/13(月) 18:52:00.24ID:BwoUkKtw866デフォルトの名無しさん
2020/01/13(月) 23:08:55.12ID:Xv6FKp77 >>863
俺は切ってるけどな。
が、こんなところで言い争いをする意味もないので、Rustはどうかと思ってFireFox見てみたが、
SpiderMonkeyは思いっきりC++じゃねえかよ。Rustってどこに使われてるんだ?
https://hg.mozilla.org/mozilla-central/file/d5843cae64d30255b242d051888e99bef3de5c05
俺は切ってるけどな。
が、こんなところで言い争いをする意味もないので、Rustはどうかと思ってFireFox見てみたが、
SpiderMonkeyは思いっきりC++じゃねえかよ。Rustってどこに使われてるんだ?
https://hg.mozilla.org/mozilla-central/file/d5843cae64d30255b242d051888e99bef3de5c05
867デフォルトの名無しさん
2020/01/13(月) 23:22:40.80ID:xcD2sz0v まあ実践的なコードになればなるほど、
mut, unsafe, refcell使いまくりだからな。。
mut, unsafe, refcell使いまくりだからな。。
868デフォルトの名無しさん
2020/01/13(月) 23:35:29.58ID:oL0Ub0pZ >>866
とりあえずservoディレクトリの下はRustだと思うけど。
とりあえずservoディレクトリの下はRustだと思うけど。
869デフォルトの名無しさん
2020/01/14(火) 16:22:27.20ID:uFo9dhko >>849 俺も、昔C言語で苦しんだな。誰にも教えてもらえないし、しかしその分人より詳しくなったよ。
C言語に詳しくなるって事は、弱点も知ることになる、そしてその弱点からどう逃げるか?そういうことも考えるようになる。
Rustの逆引き辞典みたいなハンドブックがインターネットに転がってないかなぁ
C言語に詳しくなるって事は、弱点も知ることになる、そしてその弱点からどう逃げるか?そういうことも考えるようになる。
Rustの逆引き辞典みたいなハンドブックがインターネットに転がってないかなぁ
870デフォルトの名無しさん
2020/01/14(火) 19:15:10.25ID:3eaorBLU こことか結構いいぞ。
https://github.com/rust-unofficial
https://github.com/rust-unofficial
871デフォルトの名無しさん
2020/01/14(火) 19:21:50.48ID:tuFEGmKg moveのコストってみんな気にしてる?
Cだったらポインタ渡すだけだったり
ポインタを返すだけだったりで最小限な感あるけど
rustじゃポインタ中心でやりくりしないよね
Cだったらポインタ渡すだけだったり
ポインタを返すだけだったりで最小限な感あるけど
rustじゃポインタ中心でやりくりしないよね
872デフォルトの名無しさん
2020/01/14(火) 20:12:08.07ID:bWQIptzM コンパイラの最適化で消えるんじゃないの?知らんけど
moveコストが気になるってどんなプログラムか想像付かないけどゲームとか?
moveコストが気になるってどんなプログラムか想像付かないけどゲームとか?
873デフォルトの名無しさん
2020/01/14(火) 22:36:34.11ID:fFlEK4SW 普通moveコストが気になるほど巨大なものをスタックに置かないのでは。
あとCでポインタ渡すケースなら普通は参照渡しだろうし。
あとCでポインタ渡すケースなら普通は参照渡しだろうし。
874デフォルトの名無しさん
2020/01/14(火) 22:49:49.23ID:QFWUHN7i そやったね失礼
参照があったわw
初心者まるだしですまそ
参照があったわw
初心者まるだしですまそ
875デフォルトの名無しさん
2020/01/14(火) 23:35:09.81ID:ngXFRoSC876デフォルトの名無しさん
2020/01/15(水) 08:43:43.81ID:nrskqwsi どちらかというとCと同じ抽象度で書いても安全性が担保されることがRustのメリットでは。
より高い抽象度の操作しか許さないから安全、ってのなら他にいくらでも選択肢はあるわけで。
より高い抽象度の操作しか許さないから安全、ってのなら他にいくらでも選択肢はあるわけで。
877デフォルトの名無しさん
2020/01/15(水) 10:16:34.92ID:DPd+8sgQ >>876
ご意見ごもっとも。
ただ、例外的とされている仕様を日常的に使用せざるを得ないのは、
言語の仕様(思想)または適用範囲(用途)を間違えているからだ。
「安全なC」を目指すのも一見良さそうにも見えるが、実際のところ、
Cが問題になるのは馬鹿が書くからであって、いわゆる「駄目なコード」はOSSには存在しない。
(正確には「駄目なコード」があるとメンテ不能となって淘汰されるから、
生き残っているOSSはメンテ可能状態=駄目なコードがない状態に保たれている)
この意味では、Cを馬鹿よけとして使っているLinusのやり方が正しい。
「非安全」だから使うなとされている機能を常用するのならRustを使う意味がまるでないし、
コーディングがしにくいだけの単なる「意識高い系ドM」でしかない。
当然、プロジェクトは沈没していく。
一方、ロシアは鉛筆を使った、に近い。
ご意見ごもっとも。
ただ、例外的とされている仕様を日常的に使用せざるを得ないのは、
言語の仕様(思想)または適用範囲(用途)を間違えているからだ。
「安全なC」を目指すのも一見良さそうにも見えるが、実際のところ、
Cが問題になるのは馬鹿が書くからであって、いわゆる「駄目なコード」はOSSには存在しない。
(正確には「駄目なコード」があるとメンテ不能となって淘汰されるから、
生き残っているOSSはメンテ可能状態=駄目なコードがない状態に保たれている)
この意味では、Cを馬鹿よけとして使っているLinusのやり方が正しい。
「非安全」だから使うなとされている機能を常用するのならRustを使う意味がまるでないし、
コーディングがしにくいだけの単なる「意識高い系ドM」でしかない。
当然、プロジェクトは沈没していく。
一方、ロシアは鉛筆を使った、に近い。
878デフォルトの名無しさん
2020/01/15(水) 13:15:08.87ID:eUr1BYr3879デフォルトの名無しさん
2020/01/15(水) 15:26:49.41ID:vosN76E7 opensslさんから一言お願いします
880デフォルトの名無しさん
2020/01/15(水) 18:02:26.14ID:lC3F4iid881デフォルトの名無しさん
2020/01/15(水) 21:18:04.48ID:DPd+8sgQ >>880
Rustはどんな馬鹿が書いてもセキュリティホールが存在し得ないとでも?
多分お前はセキュリティホールが何か、すら分かってないと思うが。
むしろお前みたいな馬鹿がRust使う意味なんて全くないはず。
俺やRustの言う「駄目なコード」はそこではないし。
お前みたいな馬鹿でも分かる話をするなら、
現実として、もっと上位の記述しか出来ないPHPでもセキュリティの問題はやらかしまくってるだろ。
あれは『ホール』と呼ぶべきかどうか、という話はあるにしても、
低位の『ホール』だけ塞いだところでその上位でいくらでもやらかせるのでそれ自体に大した意味はないんだよ。
それ以前に、Rustが低位の『ホール』を全部塞いでいるかどうかなんて俺は知らんが。
あれはPHPerの頭が悪いせいにされているが、お前らがWebやったらもっと酷いことをやらかすのは確実だ。
Rustはどんな馬鹿が書いてもセキュリティホールが存在し得ないとでも?
多分お前はセキュリティホールが何か、すら分かってないと思うが。
むしろお前みたいな馬鹿がRust使う意味なんて全くないはず。
俺やRustの言う「駄目なコード」はそこではないし。
お前みたいな馬鹿でも分かる話をするなら、
現実として、もっと上位の記述しか出来ないPHPでもセキュリティの問題はやらかしまくってるだろ。
あれは『ホール』と呼ぶべきかどうか、という話はあるにしても、
低位の『ホール』だけ塞いだところでその上位でいくらでもやらかせるのでそれ自体に大した意味はないんだよ。
それ以前に、Rustが低位の『ホール』を全部塞いでいるかどうかなんて俺は知らんが。
あれはPHPerの頭が悪いせいにされているが、お前らがWebやったらもっと酷いことをやらかすのは確実だ。
882デフォルトの名無しさん
2020/01/15(水) 21:50:07.07ID:vosN76E7 あんたのいう駄目なコードの定義なんて誰も知らないだろ
883デフォルトの名無しさん
2020/01/15(水) 21:53:07.43ID:JGL8Rg1T まあ静的チェックで仕事終わりにできると思ってるバカは多いな。
そういう馬鹿が一番厄介。あの手この手でテストしない理由をこねくり回してくる。
そういう馬鹿が一番厄介。あの手この手でテストしない理由をこねくり回してくる。
884デフォルトの名無しさん
2020/01/15(水) 22:48:54.43ID:lC3F4iid885デフォルトの名無しさん
2020/01/15(水) 23:21:00.85ID:DPd+8sgQ886デフォルトの名無しさん
2020/01/15(水) 23:50:55.75ID:lC3F4iid >>885
はっきり書いてあることと関係ないこと喚いてるだけじゃん
はっきり書いてあることと関係ないこと喚いてるだけじゃん
887デフォルトの名無しさん
2020/01/16(木) 00:41:04.84ID:o+vnDRH4 >>886
日本語が不自由なら半島に帰れ
日本語が出来るつもりなら正しく伝わるように言え
Rustで書かれて開発体制がしっかりしているはずのFireFoxでも、
糞遅くてシェア落としまくりで最早ゴミになりつつあり、
セキュリティホールが存在しないって事もあり得ないと思うけど。
CとRustの対比で「セキュリティホール」を持ち出している時点で意味不明だが、
お前が言っていることに直接言及するならこうなる。
これには反論出来るのか?
日本語が不自由なら半島に帰れ
日本語が出来るつもりなら正しく伝わるように言え
Rustで書かれて開発体制がしっかりしているはずのFireFoxでも、
糞遅くてシェア落としまくりで最早ゴミになりつつあり、
セキュリティホールが存在しないって事もあり得ないと思うけど。
CとRustの対比で「セキュリティホール」を持ち出している時点で意味不明だが、
お前が言っていることに直接言及するならこうなる。
これには反論出来るのか?
888デフォルトの名無しさん
2020/01/16(木) 00:43:31.18ID:AX8DDKRs889デフォルトの名無しさん
2020/01/16(木) 00:45:07.72ID:o+vnDRH4890デフォルトの名無しさん
2020/01/16(木) 01:20:17.86ID:o1pVy6eo 問題を起こさない人が書いたコードには問題がない
という主張になんの意味があるんだ
そりゃそうだろとしか言いようがない
そんな人間はいないという前提にいないならばプログラマー同士の議論にはならないだろ
という主張になんの意味があるんだ
そりゃそうだろとしか言いようがない
そんな人間はいないという前提にいないならばプログラマー同士の議論にはならないだろ
891デフォルトの名無しさん
2020/01/16(木) 02:17:49.53ID:OG9QJoeV892デフォルトの名無しさん
2020/01/16(木) 05:48:47.89ID:I1VMveuP 自動車で考えると、自動運転が進むと自動車が優秀だから馬鹿が運転しても事故が起きない。
「馬鹿」は運転するなと?
「馬鹿」と言い切ってしまうから、問題がややこしくなる。感情的になるような気がする。
馬鹿除けとは、微妙な表現だ。
「馬鹿」は運転するなと?
「馬鹿」と言い切ってしまうから、問題がややこしくなる。感情的になるような気がする。
馬鹿除けとは、微妙な表現だ。
893デフォルトの名無しさん
2020/01/16(木) 06:09:04.61ID:iXD/XJ1o 微妙だが実際linuxはそれで成功してるしな。。
馬鹿よけがびっくりするほど効果的だったという事実。
馬鹿よけがびっくりするほど効果的だったという事実。
894デフォルトの名無しさん
2020/01/16(木) 23:16:50.25ID:o+vnDRH4 >>892
> 「馬鹿」は運転するなと?
yes。DSL(例:Excelのマクロ)やアプリケーションレベルはやればいいが、システムレベルは止めた方がいい。
(一般的に滅茶苦茶切れると聞く)料理人用の包丁を素人が使ったら当然怪我するし、
子供に包丁を練習させるときには主婦レベルからしても切れなすぎて使えない果物ナイフ等から始めるだろ。
技量に応じた適切な道具はある。
システムレベルなんてプロの領域だから、Cすら適切に扱えない奴がやろうとするのが間違ってる。
愚直にこれ、つまり駄目なコードを目で見てrejectすることにより上手く行っているのがLinux。
RustはCすら満足に扱えない馬鹿の為にありとあらゆる補助輪を付けて
馬鹿な素人でもシステムレベルのプログラミングが出来るようになっている、
と考えるのは日本人の勘違いでしかない。
というか、どんな馬鹿でもどうにかして使って人件費を下げよう、という日本流思想が根本的に間違い。
年収を比べれば分かるはずだが、海外はざっくり2倍、つまり2倍の生産性であることを意味する。
https://qiita.com/jabba/items/72c7f9202a1a0a5616fc
といっても、ここにいるような奴は、「隣の奴より俺の方が倍働いている」「俺は平均よりは上だ」と思っているだろうし、
実際そうだとも思うが。
が、まあ、それはさておき、結果的に海外のプログラマは日本で言う「平均以上」の奴らのみで構成されているはずで、
俺らが日常的に目にしている「馬鹿」レベルはかなり少ないはずだし、結果、逆の方向、つまり、
・Cを適切に扱える奴が、もっと生産性の高い言語を使ったらどうなる?
を目指しているはずだ。だから必要であればunsafeを躊躇なく使うし、それでも問題ないわけで。
> 「馬鹿」は運転するなと?
yes。DSL(例:Excelのマクロ)やアプリケーションレベルはやればいいが、システムレベルは止めた方がいい。
(一般的に滅茶苦茶切れると聞く)料理人用の包丁を素人が使ったら当然怪我するし、
子供に包丁を練習させるときには主婦レベルからしても切れなすぎて使えない果物ナイフ等から始めるだろ。
技量に応じた適切な道具はある。
システムレベルなんてプロの領域だから、Cすら適切に扱えない奴がやろうとするのが間違ってる。
愚直にこれ、つまり駄目なコードを目で見てrejectすることにより上手く行っているのがLinux。
RustはCすら満足に扱えない馬鹿の為にありとあらゆる補助輪を付けて
馬鹿な素人でもシステムレベルのプログラミングが出来るようになっている、
と考えるのは日本人の勘違いでしかない。
というか、どんな馬鹿でもどうにかして使って人件費を下げよう、という日本流思想が根本的に間違い。
年収を比べれば分かるはずだが、海外はざっくり2倍、つまり2倍の生産性であることを意味する。
https://qiita.com/jabba/items/72c7f9202a1a0a5616fc
といっても、ここにいるような奴は、「隣の奴より俺の方が倍働いている」「俺は平均よりは上だ」と思っているだろうし、
実際そうだとも思うが。
が、まあ、それはさておき、結果的に海外のプログラマは日本で言う「平均以上」の奴らのみで構成されているはずで、
俺らが日常的に目にしている「馬鹿」レベルはかなり少ないはずだし、結果、逆の方向、つまり、
・Cを適切に扱える奴が、もっと生産性の高い言語を使ったらどうなる?
を目指しているはずだ。だから必要であればunsafeを躊躇なく使うし、それでも問題ないわけで。
895デフォルトの名無しさん
2020/01/16(木) 23:17:33.90ID:o+vnDRH4 そもそも何でもかんでも馬鹿中心に考えるのは馬鹿の思い上がりであって、
例えばGCにしても、「GCが無いとリークしまくる馬鹿の為の補助輪」ではなく、
「メモリ管理の煩わしさからプログラマを解放する」為の物であり、当然暗に「その先」を目指している。
だからそもそもCすらまともに使えない奴がRustを使うのが間違いで、
(実際どうかはさておき、目指しているところは)Rustはより生産性が高いというわけだから、
基本ラインとしては,、「Cだとメンドクセエ」「Cだと俺の理想のコードにならねえ」と思う奴が使う言語だろ。
つまり、本来は、問題を起こさないようになってから使う言語だよ、Rustは。
例えばGCにしても、「GCが無いとリークしまくる馬鹿の為の補助輪」ではなく、
「メモリ管理の煩わしさからプログラマを解放する」為の物であり、当然暗に「その先」を目指している。
だからそもそもCすらまともに使えない奴がRustを使うのが間違いで、
(実際どうかはさておき、目指しているところは)Rustはより生産性が高いというわけだから、
基本ラインとしては,、「Cだとメンドクセエ」「Cだと俺の理想のコードにならねえ」と思う奴が使う言語だろ。
つまり、本来は、問題を起こさないようになってから使う言語だよ、Rustは。
896デフォルトの名無しさん
2020/01/17(金) 00:37:23.07ID:N4X+Xwxw そのキータには、日本人は同じレベルでも給料が安いと書いてあるようだが
897デフォルトの名無しさん
2020/01/17(金) 09:47:24.91ID:w7/ZzyeZ enumがヴァリアントの最大幅とるってどういう原理?
structはCより最適化されてるよね
structはCより最適化されてるよね
898デフォルトの名無しさん
2020/01/17(金) 11:18:32.31ID:5x//VkpE Cのunionみたいな?
899デフォルトの名無しさん
2020/01/17(金) 20:01:37.63ID:ci6pcaNH 馬鹿を自覚できてる人なら
必死の長文を連投したりはしないんだろうな
必死の長文を連投したりはしないんだろうな
900デフォルトの名無しさん
2020/01/18(土) 00:49:52.56ID:LVpCcFR7 最近このスレを見始めて、過去ログから見てたんだけど、Cargoで不満言ってる人いるけど、理由って何?
単純に気になるんだけど、クソしか言ってないから分からん
単純に気になるんだけど、クソしか言ってないから分からん
901デフォルトの名無しさん
2020/01/18(土) 02:06:56.11ID:PBVL2e99 あーん、actix様が死んだー
902デフォルトの名無しさん
2020/01/18(土) 05:41:10.98ID:A26NF1jl 急募: actix-web 乗り換え先
903デフォルトの名無しさん
2020/01/18(土) 06:25:00.35ID:MTwjFHlv ファ!?マジでお亡くなりになってるやんけ
一体何があった?
一体何があった?
904デフォルトの名無しさん
2020/01/18(土) 07:04:10.17ID:i03lhjxa ざっと見たところ、クソコメがひどいからactixのメンテやめるわって事かな
ベンチマーク詐欺師、バグだらけ、俺のパッチを受け入れろ
と言われて炎上したのが原因か?
ベンチマーク詐欺師、バグだらけ、俺のパッチを受け入れろ
と言われて炎上したのが原因か?
905デフォルトの名無しさん
2020/01/18(土) 07:05:30.30ID:5dxh/zOs >>903
つ https://twitter.com/GolDDranks/status/1218153099639934976
https://twitter.com/5chan_nel (5ch newer account)
つ https://twitter.com/GolDDranks/status/1218153099639934976
https://twitter.com/5chan_nel (5ch newer account)
906デフォルトの名無しさん
2020/01/18(土) 14:41:26.79ID:wMBhn349 なんで関係ない第三者が辞める宣言しとるんやと思ったら「辞めろ」のtypoか
ま、いうてすぐ別のフォークが誕生するやろ ハナホジー
ま、いうてすぐ別のフォークが誕生するやろ ハナホジー
907デフォルトの名無しさん
2020/01/18(土) 20:42:42.95ID:1O2OVvd1 cargoは何でもやろうとし過ぎなのが一番のクソポイントだと思ってるけど、個人的には
・他のビルドツールと一緒に使うのが面倒
・パッケージマネージャとビルドツールが同じツールであることが非合理的
・昔は「crateはrustのコンパイル単位です」なんて戯言を抜かしていた
・rustcを改善するモチベーションが下がる
全部個人の感想だし、マンパワーが足りないならひと括りにするメリットはあったと思うけど、イケてないと常々思ってる
・他のビルドツールと一緒に使うのが面倒
・パッケージマネージャとビルドツールが同じツールであることが非合理的
・昔は「crateはrustのコンパイル単位です」なんて戯言を抜かしていた
・rustcを改善するモチベーションが下がる
全部個人の感想だし、マンパワーが足りないならひと括りにするメリットはあったと思うけど、イケてないと常々思ってる
908デフォルトの名無しさん
2020/01/19(日) 00:07:59.13ID:ZofGlu8L 以前はcargoからリンカを制御方法とか全く判らなかったけど最近出来るようになったのかな
909デフォルトの名無しさん
2020/01/19(日) 06:17:00.35ID:npSn4vFb Clangだから成功したと言えるのか?
Rustなどのモダンなシステムプログラミング言語があの時代にあればどうなったかは誰にも分からんだろ
リーナスがRustキチであっても他のプログラマとしての素質が変わらなければ成功したと俺は思うが
なんにせよ巨人の肩に乗ってマウントした気になっても万人がそれで納得するとは限らないし逆効果もあるぞ
Rustなどのモダンなシステムプログラミング言語があの時代にあればどうなったかは誰にも分からんだろ
リーナスがRustキチであっても他のプログラマとしての素質が変わらなければ成功したと俺は思うが
なんにせよ巨人の肩に乗ってマウントした気になっても万人がそれで納得するとは限らないし逆効果もあるぞ
910デフォルトの名無しさん
2020/01/19(日) 06:19:04.90ID:npSn4vFb なんか以前書き込んだはずのレスができてなくてロードしたら送信されたっぽい
>>893辺りへのレスだが恥ずかしいからROMるわ、すまんな
>>893辺りへのレスだが恥ずかしいからROMるわ、すまんな
911デフォルトの名無しさん
2020/01/19(日) 09:48:12.84ID:TwfOJbH4 >>907
cargoの欠点答えてくれてありがとう
正しいcargoの立ち位置としてパッケージマネジャーの仕事だけして、今cargoがしてるビルドツールのラッパー要素を別にして、その別のでcargoとructcを単純に抽象化したら結構解決するってことかな?
cargoの欠点答えてくれてありがとう
正しいcargoの立ち位置としてパッケージマネジャーの仕事だけして、今cargoがしてるビルドツールのラッパー要素を別にして、その別のでcargoとructcを単純に抽象化したら結構解決するってことかな?
912デフォルトの名無しさん
2020/01/19(日) 10:13:54.83ID:L2mlhsAt >>909
なにからなにまでずれすぎててどっからつっこだらいいのやら。。
clangとlinuxは全く関係ないし、
リーナスがrust推しだったらとかプログラムの好みからしてそれだったらlinux作っとらんしとか
どこからどこまでも間違ってるとしか言いようがない。
仮定としてできることとしたらc++テンプレートの信頼性が当時高かったらとかその程度だろう。
それでもc++を使うことはなかっただろうと思うが。
なにからなにまでずれすぎててどっからつっこだらいいのやら。。
clangとlinuxは全く関係ないし、
リーナスがrust推しだったらとかプログラムの好みからしてそれだったらlinux作っとらんしとか
どこからどこまでも間違ってるとしか言いようがない。
仮定としてできることとしたらc++テンプレートの信頼性が当時高かったらとかその程度だろう。
それでもc++を使うことはなかっただろうと思うが。
913デフォルトの名無しさん
2020/01/19(日) 10:31:40.67ID:PM2cmccN LinusにRustを教えたのがアワシロイクヤ氏だったのも良かったんじゃないか。
人柄だな。
人柄だな。
914デフォルトの名無しさん
2020/01/19(日) 11:07:27.21ID:QWtapXFZ >>909
お前は問題の本質が分かってない。
言語の問題ではなく、マネジメントの問題だ。
巨人の肩に乗ってマウントガーなんてのは、お前がコンプレックス持ちの馬鹿だからそう勘違いするだけ。
誰もそんなことしようともしていない。
駄目なコード片が混入した場合、何も保護機構がないCではプロジェクト全体が死んでしまう。
よって、どうやってそれを防ぐか、という話であって、Linusはアナログ的に「目で見てreject」をやってる。
それでLinuxは最も成功しているOSSの一つなのだから、これは結果的には正しい、とは言える。
が、当然これはデジタル的には格好悪すぎる。
よって各種言語は何とかして静的に検査をしようと、文法を拡充させてきた。
C++文法がゴテゴテになってるのも、Rustがやたらコンパイルが厳しいのもこれだ。
これで短/長期的な生産性を競おう、ということになっている。
さて、Linusの「馬鹿が書いたコードなんてイラネ」は「それ言っちゃおしめえよ」ではあるから、当然反発はされる。>>892もこれだ。
とはいえ、結果的にこれは単純には、
1. Cで問題ない奴はCで書く
2. Cでも問題ないレベル(安全装置がなくても問題ない人達)だが、Linusのやり方が気に入らないからコミットしない
3. Cでは駄目なレベル(安全装置があるから何とかなっている人達)だが、Rustならいけるかも?
で、Linuxは結果的に1だけでプロジェクトを動かしている。
その分、commit出来る人が減り、追従は遅くなるが、今のところ他よりまし、ということになっている。
一方、Rustで何かプロジェクトを起こした場合、2だけで構成するならLinuxを倒せるはずだが、3の人達の混入を防げない。
駄目なコード片の混入を防ぐのは、プルリク段階で弾くのがもっとも効率がよく、
一旦受け入れて問題が発生してデバッグだと1000倍以上の手間がかかってしまう。
よってこれはプロジェクトにとっては大問題で、絶対にやってはいけないのだが、これを防ぐことは今現在出来ない。
というか、今の言語はまだここまで進化出来ていない。
お前は問題の本質が分かってない。
言語の問題ではなく、マネジメントの問題だ。
巨人の肩に乗ってマウントガーなんてのは、お前がコンプレックス持ちの馬鹿だからそう勘違いするだけ。
誰もそんなことしようともしていない。
駄目なコード片が混入した場合、何も保護機構がないCではプロジェクト全体が死んでしまう。
よって、どうやってそれを防ぐか、という話であって、Linusはアナログ的に「目で見てreject」をやってる。
それでLinuxは最も成功しているOSSの一つなのだから、これは結果的には正しい、とは言える。
が、当然これはデジタル的には格好悪すぎる。
よって各種言語は何とかして静的に検査をしようと、文法を拡充させてきた。
C++文法がゴテゴテになってるのも、Rustがやたらコンパイルが厳しいのもこれだ。
これで短/長期的な生産性を競おう、ということになっている。
さて、Linusの「馬鹿が書いたコードなんてイラネ」は「それ言っちゃおしめえよ」ではあるから、当然反発はされる。>>892もこれだ。
とはいえ、結果的にこれは単純には、
1. Cで問題ない奴はCで書く
2. Cでも問題ないレベル(安全装置がなくても問題ない人達)だが、Linusのやり方が気に入らないからコミットしない
3. Cでは駄目なレベル(安全装置があるから何とかなっている人達)だが、Rustならいけるかも?
で、Linuxは結果的に1だけでプロジェクトを動かしている。
その分、commit出来る人が減り、追従は遅くなるが、今のところ他よりまし、ということになっている。
一方、Rustで何かプロジェクトを起こした場合、2だけで構成するならLinuxを倒せるはずだが、3の人達の混入を防げない。
駄目なコード片の混入を防ぐのは、プルリク段階で弾くのがもっとも効率がよく、
一旦受け入れて問題が発生してデバッグだと1000倍以上の手間がかかってしまう。
よってこれはプロジェクトにとっては大問題で、絶対にやってはいけないのだが、これを防ぐことは今現在出来ない。
というか、今の言語はまだここまで進化出来ていない。
915デフォルトの名無しさん
2020/01/19(日) 11:07:44.98ID:QWtapXFZ だからこれは、長期的には「どのレベルの人まで受け入れるか」「それで十分な人数が確保出来るか」であり、
C++を丸ごと切り捨てているLinuxは相当思い切った判断だが、それでも何とかなっているし、
結果的には、全く保護機構のないCだとこれが正解だ、ということでしかない。
対してRustみたいに安全機構が付いている言語だと、そのレベルを下げられ、結果的にコミッタも増え、早く進化していけるはずで、
だからこそ進化速度が重要なブラウザをターゲットに選んだのは正しいのだが、
結果的に死につつあるのだから、確実に何かが間違っていたはずであり、
それは既に言われているが「学習曲線」、つまりそもそもチャキチャキ書けないことだろう。
1,2の人達にとっては厳しい検査なんて足枷でしかない。3を救済する為に1,2に足枷をはめていて、
結果的に総合的な生産性が落ち、プロジェクトが死につつある、というだけの話だ。
だから、個人的には、正解は「C+外部検査(リンター)」だと思っている。
今で言うとTypeScriptみたいな、チェック機構外付けの言語とかだ。
静的検査が出来る=静的検査をリンターとして外部に切り出せる、でしかないから、
静的検査メインで言語を拡張するのはナンセンスだ。
(Rustはそうではないが)
C++を丸ごと切り捨てているLinuxは相当思い切った判断だが、それでも何とかなっているし、
結果的には、全く保護機構のないCだとこれが正解だ、ということでしかない。
対してRustみたいに安全機構が付いている言語だと、そのレベルを下げられ、結果的にコミッタも増え、早く進化していけるはずで、
だからこそ進化速度が重要なブラウザをターゲットに選んだのは正しいのだが、
結果的に死につつあるのだから、確実に何かが間違っていたはずであり、
それは既に言われているが「学習曲線」、つまりそもそもチャキチャキ書けないことだろう。
1,2の人達にとっては厳しい検査なんて足枷でしかない。3を救済する為に1,2に足枷をはめていて、
結果的に総合的な生産性が落ち、プロジェクトが死につつある、というだけの話だ。
だから、個人的には、正解は「C+外部検査(リンター)」だと思っている。
今で言うとTypeScriptみたいな、チェック機構外付けの言語とかだ。
静的検査が出来る=静的検査をリンターとして外部に切り出せる、でしかないから、
静的検査メインで言語を拡張するのはナンセンスだ。
(Rustはそうではないが)
916デフォルトの名無しさん
2020/01/19(日) 11:13:46.05ID:PM2cmccN アワシロさんはそうは言ってなかったな。
むしろRustは普遍的にどこでも使えると説いてた。
むしろRustは普遍的にどこでも使えると説いてた。
917デフォルトの名無しさん
2020/01/19(日) 11:19:38.67ID:PM2cmccN Rustは銀の弾丸足りえると世界の重鎮が口をそろえるし、俺はお前よりアワシロイクヤ氏を信じるね。
918デフォルトの名無しさん
2020/01/19(日) 11:52:50.23ID:7W3/Ww9S ・論拠と解釈がオレオレ過ぎ
・安全性に対する理解が浅すぎ
・プロジェクトの成功/失敗に対する見識が甘すぎ
・面白くないくせにレス長過ぎ
・安全性に対する理解が浅すぎ
・プロジェクトの成功/失敗に対する見識が甘すぎ
・面白くないくせにレス長過ぎ
919デフォルトの名無しさん
2020/01/19(日) 12:13:02.49ID:xMKry/BQ そもそもFirefoxのほとんどはC++なんだから、言語のせいにしたいならC++のせいってことでは。
920デフォルトの名無しさん
2020/01/19(日) 12:39:52.36ID:L2mlhsAt まあlinusが良く言ってるようにじゃあそれで作ってみれば?って話なんだわな。
そして誰も作らないというのが答え。
そして誰も作らないというのが答え。
921デフォルトの名無しさん
2020/01/19(日) 13:24:12.12ID:QWtapXFZ >>919
成功したら俺の手柄、失敗したら相手のせいか。
さすがバヨク御用達言語だな。
Rustコミュニティの問題は>>905に典型的に現れているが、(なお俺はGitHubのactixのreadmeも読んだ)
> 「つまらないPRだな」と
> 上から目線のコメントを書き、
> 関係のない(?)人から「そんな態度でお前にRustを書く権利はない、辞めろ」と怒られて
他でも言われてるとおりSJWの巣窟になってる。
これは明らかに防げた問題でしかないだろ。
これから売りになる(はずの)モジュールを別言語で、というのはもっと慎重に行うべき判断で、
比較するとしたら、
・servoをRustで書いた今のFireFox
・servoをこれまでの言語(多分C++)で書いたFireFox
なんだよ。単純には人数的に多いC++を切ってRustを入れたのだから、これだけで被害が出る。
そしてそれを上回る物をRustが持っているか、といえば、ない。結果、沈没してるだけ。
Rust自体に意味がないか、時期が早すぎたかのどちらかで、どちらかは今後確定する。
それとは別に、コミュニティがおかしな方向に腐っている、というのは既に発生しているようだが。
成功したら俺の手柄、失敗したら相手のせいか。
さすがバヨク御用達言語だな。
Rustコミュニティの問題は>>905に典型的に現れているが、(なお俺はGitHubのactixのreadmeも読んだ)
> 「つまらないPRだな」と
> 上から目線のコメントを書き、
> 関係のない(?)人から「そんな態度でお前にRustを書く権利はない、辞めろ」と怒られて
他でも言われてるとおりSJWの巣窟になってる。
これは明らかに防げた問題でしかないだろ。
これから売りになる(はずの)モジュールを別言語で、というのはもっと慎重に行うべき判断で、
比較するとしたら、
・servoをRustで書いた今のFireFox
・servoをこれまでの言語(多分C++)で書いたFireFox
なんだよ。単純には人数的に多いC++を切ってRustを入れたのだから、これだけで被害が出る。
そしてそれを上回る物をRustが持っているか、といえば、ない。結果、沈没してるだけ。
Rust自体に意味がないか、時期が早すぎたかのどちらかで、どちらかは今後確定する。
それとは別に、コミュニティがおかしな方向に腐っている、というのは既に発生しているようだが。
922デフォルトの名無しさん
2020/01/19(日) 14:26:00.08ID:FAn8lf8z > ・面白くないくせにレス長過ぎ
これなw
これなw
923デフォルトの名無しさん
2020/01/19(日) 15:56:33.65ID:ehZNNwbS また禿の話してる
よく飽きないな
よく飽きないな
924デフォルトの名無しさん
2020/01/19(日) 17:14:22.99ID:TwfOJbH4 servoって失敗してるの?
根拠かソース欲しいな
根拠かソース欲しいな
925デフォルトの名無しさん
2020/01/19(日) 17:40:01.25ID:QWtapXFZ >>924
信者には成功と見えるのは理解した
信者には成功と見えるのは理解した
926デフォルトの名無しさん
2020/01/19(日) 17:59:29.14ID:TwfOJbH4 >>925
servoの現状知らないから聞きたかっただけなんだけどなぁ・・・
他人を勝手に敵と思って攻撃するような人間で君(QWtapXFZ)を信頼できると思うのかな、他の人は。
長文先輩は興味なかったけどキモいな
servoの現状知らないから聞きたかっただけなんだけどなぁ・・・
他人を勝手に敵と思って攻撃するような人間で君(QWtapXFZ)を信頼できると思うのかな、他の人は。
長文先輩は興味なかったけどキモいな
927デフォルトの名無しさん
2020/01/19(日) 17:59:49.13ID:L2mlhsAt servoのコード見る限りはrustで書く意味なくね?って感じだがな。。
ほとんどunsafeコードだし。
ほとんどunsafeコードだし。
928デフォルトの名無しさん
2020/01/19(日) 18:31:53.27ID:PM2cmccN Rustはコンパイルを通ればバグが無いことがある程度保障される。
それがC++やJavaに対するアドバンテージ。
それがC++やJavaに対するアドバンテージ。
929デフォルトの名無しさん
2020/01/19(日) 19:37:27.07ID:QWtapXFZ >>928
それHaskellも言ってたけどな。
まあ静的検査で出来るところは静的検査でやるべきなのは事実。
C++もそれを目指してはいるが、結果的にグチャグチャになっている。
そしてRustもそれを目指してはいるが、
結果的に「Cだと全く問題なく動く、バグのないコード」でもコンパイルが通らずに苦労してるわけだろ。
それじゃそもそも話にならんだろ。
C++なら「やらない」という選択肢はあるが、コンパイルが通らないようでは回避しようがない。
そして全員に「Rust流」を強制することになり、これがSJWが蔓延る遠因なのかな、とも思うが。
Javaが良いとは言わんが、最も成功している言語であるのも事実だよ。
そこはわきまえた方がいい。今のRustなんてJavaからするとゴミ以下だ。
いずれにしても、俺は静的検査はリンターとして分離出来ると思っているから、
そこに差別化要因を求めるのは間違いだと思ってる。
コミュニティが機能していれば、本当にRustの静的検査能力が素晴らしいとなれば、
リンターとしてC++やJavaやPythonにポーティングしようとする奴は必ず出てくるし、技術的にも大して問題ない。
その後で何も残らんだろ、Rustには。
それHaskellも言ってたけどな。
まあ静的検査で出来るところは静的検査でやるべきなのは事実。
C++もそれを目指してはいるが、結果的にグチャグチャになっている。
そしてRustもそれを目指してはいるが、
結果的に「Cだと全く問題なく動く、バグのないコード」でもコンパイルが通らずに苦労してるわけだろ。
それじゃそもそも話にならんだろ。
C++なら「やらない」という選択肢はあるが、コンパイルが通らないようでは回避しようがない。
そして全員に「Rust流」を強制することになり、これがSJWが蔓延る遠因なのかな、とも思うが。
Javaが良いとは言わんが、最も成功している言語であるのも事実だよ。
そこはわきまえた方がいい。今のRustなんてJavaからするとゴミ以下だ。
いずれにしても、俺は静的検査はリンターとして分離出来ると思っているから、
そこに差別化要因を求めるのは間違いだと思ってる。
コミュニティが機能していれば、本当にRustの静的検査能力が素晴らしいとなれば、
リンターとしてC++やJavaやPythonにポーティングしようとする奴は必ず出てくるし、技術的にも大して問題ない。
その後で何も残らんだろ、Rustには。
930デフォルトの名無しさん
2020/01/19(日) 19:48:55.59ID:EjNCf+Xg RustだJavaだとか比較する以前に
ちゃんとプログラ厶書いたか怪しいレベルなのがわかる
ちゃんとプログラ厶書いたか怪しいレベルなのがわかる
931デフォルトの名無しさん
2020/01/19(日) 20:40:52.98ID:TwfOJbH4 長文先輩がコーディングするわけないじゃん、机上の空論が大好きだから
932デフォルトの名無しさん
2020/01/19(日) 21:35:55.76ID:K0reTlt5 Cを問題なく書く人がRustのコンパイル通らないから足枷になっているという議論破綻しているような
潜在的の問題になりうるコード書いているからコンパイル通らないわけで
プログラムは動けば良いわけじゃないよね
潜在的の問題になりうるコード書いているからコンパイル通らないわけで
プログラムは動けば良いわけじゃないよね
933デフォルトの名無しさん
2020/01/19(日) 22:16:57.63ID:L2mlhsAt で、そういうコンパイルエラーが生じた際の処置の仕方に問題が起きやすいわけだよ。
バカだととくにね。
資源の解放タイミングなんかはだいぶグローバルな構造によってるわけで
コンパイルエラーのときに気づくようなバカがどういう修正を行うかだいたい予想はつくわな。
バカだととくにね。
資源の解放タイミングなんかはだいぶグローバルな構造によってるわけで
コンパイルエラーのときに気づくようなバカがどういう修正を行うかだいたい予想はつくわな。
934デフォルトの名無しさん
2020/01/19(日) 23:10:53.79ID:QWtapXFZ >>932
C書ける奴がRustを手こずる理由は、寿命管理の戦略が根本的に違うからだよ。
正確に言えば、Cの場合は
A. ブロックスコープと連動
B. 投げ捨て
のどちらかが大枠の戦略だけど、ちゃんとCやる人ほど殆どAでやっている筈。
Rustはブロックスコープです、と言っておきながら実はBを要求するから戸惑っているように見える。
ただ、なら最初からBで組め、というのは全くその通りで、
だから俺は「Rustなんて簡単さ」という奴が出てこないのも若干不思議に思っている。
とはいえJavaScriptも「プロトタイプが分からんからクラス入れろ」
「非同期では組めないからコールバック地獄ガー」となる奴等ばかりだから、
「人間は一度成功したらそのやり方にこだわってしまう」とは聞くが、俺の想像以上にそうなのだろう。
ただまあ、実際のところ、Cの場合は
> 資源の解放タイミングなんかはだいぶグローバルな構造によってるわけで (>>933)
の通り、その上位でそもそも「資源管理が難しくない構造」にしてしまうから、リークに困るって事はない。
実際、素人が作ったアプリでも、リークして困るって物は存在しないでしょ。
とはいえ、この「下部構造の為に上部構造をいじる」ってのはプログラミング理論としては最悪で、
これを何とかして回避しようとC++含めていろいろ努力してきているけど、
俺が見る限り今のところGCが一番ましな戦略だと思うけど。
ま、いずれにしても、C書ける奴もRustに手こずっているのは事実だよ。
それはググれば分かるはずだし、理由は上記の通りで、言い換えると、
C流でやろうとしてもRustは通さないから。
ただ、資源戦略はBよりもAの方が適切な場合が多く、デフォでB強制なのは根本的に間違っている気はするが。
C書ける奴がRustを手こずる理由は、寿命管理の戦略が根本的に違うからだよ。
正確に言えば、Cの場合は
A. ブロックスコープと連動
B. 投げ捨て
のどちらかが大枠の戦略だけど、ちゃんとCやる人ほど殆どAでやっている筈。
Rustはブロックスコープです、と言っておきながら実はBを要求するから戸惑っているように見える。
ただ、なら最初からBで組め、というのは全くその通りで、
だから俺は「Rustなんて簡単さ」という奴が出てこないのも若干不思議に思っている。
とはいえJavaScriptも「プロトタイプが分からんからクラス入れろ」
「非同期では組めないからコールバック地獄ガー」となる奴等ばかりだから、
「人間は一度成功したらそのやり方にこだわってしまう」とは聞くが、俺の想像以上にそうなのだろう。
ただまあ、実際のところ、Cの場合は
> 資源の解放タイミングなんかはだいぶグローバルな構造によってるわけで (>>933)
の通り、その上位でそもそも「資源管理が難しくない構造」にしてしまうから、リークに困るって事はない。
実際、素人が作ったアプリでも、リークして困るって物は存在しないでしょ。
とはいえ、この「下部構造の為に上部構造をいじる」ってのはプログラミング理論としては最悪で、
これを何とかして回避しようとC++含めていろいろ努力してきているけど、
俺が見る限り今のところGCが一番ましな戦略だと思うけど。
ま、いずれにしても、C書ける奴もRustに手こずっているのは事実だよ。
それはググれば分かるはずだし、理由は上記の通りで、言い換えると、
C流でやろうとしてもRustは通さないから。
ただ、資源戦略はBよりもAの方が適切な場合が多く、デフォでB強制なのは根本的に間違っている気はするが。
935デフォルトの名無しさん
2020/01/19(日) 23:55:03.54ID:EjNCf+Xg Cすら書いたことあるか怪しいな
936デフォルトの名無しさん
2020/01/20(月) 03:49:44.77ID:KSbNzMqr LinuxがRustで書き直される時代に何言ってんだか。
937デフォルトの名無しさん
2020/01/20(月) 04:11:09.68ID:YZhtkMgR >>936
まじでそんな動きあるの?
まじでそんな動きあるの?
938デフォルトの名無しさん
2020/01/20(月) 05:00:13.14ID:KSbNzMqr んなことも知らんと議論してたのか。
939デフォルトの名無しさん
2020/01/20(月) 05:10:07.77ID:YZhtkMgR ただの妄想じゃないの
940デフォルトの名無しさん
2020/01/20(月) 05:15:03.08ID:KSbNzMqr 俺はあわしろいくや氏を信じてる。
941デフォルトの名無しさん
2020/01/20(月) 06:20:52.90ID:C5W07UVU942デフォルトの名無しさん
2020/01/20(月) 06:59:38.41ID:Ue7v6gdS redoxをlinuxの書き直しと言うのはさすがに無理がある
943デフォルトの名無しさん
2020/01/20(月) 09:40:48.70ID:Un63cF9L 信者なんてその程度
944デフォルトの名無しさん
2020/01/20(月) 09:50:44.62ID:jQa3q5cx ドライバーをRustで書くという話にLinusが
切れてないという程度
切れてないという程度
レス数が900を超えています。1000を超えると表示できなくなるよ。
