22/04/03 21:02:47.89 N+64wXdQ.net
Go「ぜんぶ ひらがな に すれば かんじ や かたかな が なくて よみやすいね!」
言うほど読みやすいか?
414:デフォルトの名無しさん
22/04/03 21:03:41.40 /giYNahv.net
>>410
されてない認識
これめちゃくちゃめんどいし、戻り値の管理が無駄に煩雑になるだけだと思うんだが
パターンマッチングもめんどい
415:デフォルトの名無しさん
22/04/03 21:05:03.73 N+64wXdQ.net
>>409
ジェネリクスがないからコピペ or interface{}でAny化して型安全を捨てる言語やぞ
エアプは黙っとれ
416:デフォルトの名無しさん
22/04/03 21:32:49.77 DNCDVh6y.net
>>408
違うよ
文法が厳格でしっかり書いてないと枝葉みたいなしょうもない理由でコンパイル通らない
それでレベルが担保される
417:デフォルトの名無しさん
22/04/03 21:35:23.71 DNCDVh6y.net
コーディングになんでエアプが出てくるんだろうか?
語彙が貧困すぎる
脳が死んでないか?
418:デフォルトの名無しさん
22/04/03 21:49:33.85 gPxpOVle.net
高度に抽象化され凝縮度の高い用語を使ってるだけだよ
エアプガイジは黙っとれ
419:デフォルトの名無しさん
22/04/03 21:56:36.46 DNCDVh6y.net
ガイジ ← 脳が委縮した差別主義者が使う言葉
エアプ ← いつまでもゲームでしか物事を例えられない人が使う言葉
420:デフォルトの名無しさん
22/04/03 21:59:40.61 gPxpOVle.net
脳が委縮した差別主義者いつまでもゲームでしか物事を例えられない人は黙っとれ
Goみたいな文だな
421:デフォルトの名無しさん
22/04/03 22:02:18.79 DNCDVh6y.net
いやいや使い方が違うだろ
見不明な置換するなよw
本物の馬鹿なんだな
422:デフォルトの名無しさん
22/04/03 22:03:00.73 DNCDVh6y.net
意味不明
423:デフォルトの名無しさん
22/04/03 22:18:16.65 9lFqLTmO.net
go の if err 1= nil は貧者のEither/Result型って感じはするな
rust の enum みたいなものを導入すると付随していろいろなものを導入する必要があり言語仕様が膨らむということならば
シンプルな仕組みで代替するという go なりの割り切りなんだと思うけど
実際のところどうなんだろうね
424:デフォルトの名無しさん
22/04/03 22:32:45.61 F6bFXWLK.net
Goのエラーハンドリングの仕様については、長いこと議論され続けてるよ
Go1はもう変わらんだろうけど、Go2は新しい仕組み入りそう
URLリンク(go.googlesource.com)
425:デフォルトの名無しさん
22/04/04 02:08:47.79 pXIYfz5U.net
Rustなどのように『値付きenum=タグ付きunion』を導入している言語たちは
色々シンプルかつ効率と容易さと美しさを両立できているから
プログラミング言語として常備すべき基本的な型なのだと思われる
426:デフォルトの名無しさん
22/04/04 07:33:26.24 fw6p8g0C.net
Goにいまさらenum導入しても標準ライブラリから全部変えないとあまり恩恵ないし
if err !=nil {}のシンタックスシュガー導入くらいが妥当だろうね
427:デフォルトの名無しさん
22/04/04 13:42:12.37 lSnbwV1p.net
関数が複数の値を返却できるのはメリットのように見えて、ソースコードの規模が大きくなるほど型の管理が難しくなるだけだと思うわ
KENTAという人はgo推してるが、保守性の高いコード組みやすい代替言語にすぐ取って代えられると思うんだよな
428:デフォルトの名無しさん
22/04/04 14:41:15.89 mbicHYAd.net
>>374
20年前にPythonがこんなに普及するとは思わなかったよ。
Perl 便利って思ってたもの。
429:デフォルトの名無しさん
22/04/04 19:55:04.23 hAxNvJK9.net
PerlとRubyが自爆してPythonだけ生き残った感はあるが。
430:デフォルトの名無しさん
22/04/04 19:58:12.66 Mr7tYRvj.net
三大Poop言語と言えば?
431:デフォルトの名無しさん
22/04/04 20:08:25.60 ZaQ2qXNU.net
10年ぶりにプログラミング学習勧めてるけどpython面白いなー
5chではそんな流行ってない感じ?
432:デフォルトの名無しさん
22/04/04 20:13:10.33 w+f2Elco.net
>>429
5ch全体ではわからないけど少なくともこのスレではpythonは下火
今一番流行っているのはRustだね。
一番人気。それだけにアンチも多くて喧々諤々の議論が巻き起こっている状態。
というよりRustの勢いが羨ましくてファビョってるだけだけどなw
433:デフォルトの名無しさん
22/04/04 20:48:23.61 mbicHYAd.net
Perl 6 は Raku になったし、自滅かもしれんが、Ruby は「ペナンブラ氏の24時間書店」に登場する位にカリフォルニアの方では認知されてたと思ったんだけど。
434:デフォルトの名無しさん
22/04/04 21:22:41.62 yu8UGqfF.net
>>413
コード生成すりゃいいじゃん
435:デフォルトの名無しさん
22/04/04 21:23:22.47 yu8UGqfF.net
>>429
すれ違い
436:デフォルトの名無しさん
22/04/04 21:24:09.92 yu8UGqfF.net
>>427
PHPもだが言語機能に大差はないからあとはライブラリの質だけの差になった
そこで圧倒的差がついた
437:デフォルトの名無しさん
22/04/04 21:25:42.99 yu8UGqfF.net
>>426
年齢はPerlと大して変わらんからな
Pythonなんてモダンな要素全くないのにここまで流行ったのは凄い
特にRubyやRailsみたいな積極的なマーケティングとかもしてないのに
438:デフォルトの名無しさん
22/04/04 21:32:16.24 CuNEs20T.net
ついにRubyが反撃の狼煙を上げる
RubyのWebAssembly/WASIへの移植が実現、プレリリース版のバイナリ公開。RubyGemsにも対応
URLリンク(www.publickey1.jp)
439:デフォルトの名無しさん
22/04/04 21:48:11.28 g5kOP8Pm.net
>>436
ぜひRailsに導入してほしい
総スカン食らって完全終了だろう
440:デフォルトの名無しさん
22/04/04 23:20:01.52 yu8UGqfF.net
>>436
これRubyインタプリタをwasmにコンパイルしてそれ上で動かすんだろ?
ありえんでしょ
441:デフォルトの名無しさん
2022/04/0
442:4(月) 23:35:26.89 ID:AN+U/Dr9.net
443:デフォルトの名無しさん
22/04/04 23:45:58.24 TGLutmH3.net
>>435
たしかにまあRubyはRailsがキラーアプリとなって日の目を見ることが出来たけど、Pythonは人気を得るきっかけとかあったのかな
GoogleはPythonをめちゃ使ってて、GuidoがGoogleに入社した2005年頃にはすでにPythonがスクリプト言語の中では勝ち組感があったんだろうけども、なんでやろ
444:デフォルトの名無しさん
22/04/04 23:50:33.75 6MqP0wMX.net
>>436
WebAssemblyでガベージコレクションのある言語を動かすのは無駄の極致
445:デフォルトの名無しさん
22/04/04 23:56:53.89 yu8UGqfF.net
>>439
Cもそうだけど
446:デフォルトの名無しさん
22/04/05 00:05:51.56 2NHa52hR.net
Cを使うならRustにした方が機能豊富でプログラミングしやすいよ
もちろんデータ競合もメモリ管理ミスも検出してくれる
そしてほとんどの場合で速度差もない
447:デフォルトの名無しさん
22/04/05 00:48:48.74 vdX4VYV5.net
The Rust Programming Language 日本語版 をちょこっと読んでみたけどC++作ったストラウストラップが変態だった気がしてしまう
448:デフォルトの名無しさん
22/04/05 01:05:33.37 CALU2HjK.net
コード生成もコピペ扱いするならrustのderiveもコピペだよな
449:デフォルトの名無しさん
22/04/05 01:29:37.39 /ryaTu8Q.net
>>442
ガイジの真似とてコピペを走らば即ちガイジなり
CがガイジだからGoもガイジで~ぇすでええんか?
450:デフォルトの名無しさん
22/04/05 01:35:13.81 u+FS9OX1.net
>>446
だからコピペじゃないって
君のいうコピペより上の概念だよ
人が介在してない
451:デフォルトの名無しさん
22/04/05 01:37:22.57 /ryaTu8Q.net
>>447
機械がするコピペはきれいなコピペか?違うだろ?バカか?
452:デフォルトの名無しさん
22/04/05 01:42:08.31 u+FS9OX1.net
>>448
君のいうコードジェネージョンがコピペというなら
ジェネリクスも中身は型が違う同じコード生成してるだけだよ?
はい勝った
完膚なきまでに勝った
ここを君を導きたかった
勝ち俺の勝ち
ジェネリクス否定
矛盾
ジェネリクスはコンパイラによるコードジェネーション
勝ち俺の勝ち
勝ち完全
フルに勝ち
勝った
453:デフォルトの名無しさん
22/04/05 01:46:35.34 raev6Sae.net
>>449
見事に勝っちゃったねえ
レスバ見てたけどそこに導こうとしてるのはわかったよ
そっちに行くな!って思ってた
そもそもコンパイラがコードジェネレータだしね
本質的には同じことしてるわけで機会がコピペしてるからなあ
そっちに行っても負けは確定する
454:デフォルトの名無しさん
22/04/05 01:50:00.91 u+FS9OX1.net
>>450
いや危なかったジェネリクスがゴミっていう風に持っていくと絶対に勝てないからね
勝つにはなんとか相手を捻じ曲げさせるしかなかった
うまく誘導できたよ
負けるかと思った
455:デフォルトの名無しさん
22/04/05 01:53:56.08 QYmdMKfu.net
>>413
そんなにGoは酷い言語なのか
なぜそんなことに?
456:デフォルトの名無しさん
22/04/05 02:13:39.62 a+cPs4U5.net
>>448
そうだよ。
457:デフォルトの名無しさん
22/04/05 02:19:13.35 fMFdzsU+.net
元の話はこれか
型安全を捨てるのは暴挙だな
>>413
> ジェネリクスがないからコピペ or interface{}でAny化して型安全を捨てる言語やぞ
458:デフォルトの名無しさん
22/04/05 07:05:37.18 82POVtug.net
>>440
pythonはなんといってもAI(ディープラーニング)が起爆剤だろ
あとは自動化・RPA関連(Excel連携、スクレイピング)でもライブラリが豊富で人気がでた
459:デフォルトの名無しさん
22/04/05 07:07:35.56 82POVtug.net
たった3ヶ月でウェブエンジニアになれた
きっかけはRailsを学んだこと
とか言ってるの最高に気持ち悪い
今はRustとかやって難しいところに悩んでる人がエンジニアだと思う
460:デフォルトの名無しさん
22/04/05 07:20:44.40 fQZQ0DHq.net
Rust自体は特に難しくはない
もしRustを難しいと感じるようなレベルの人ならば一般的にプログラミングに向いていない
461:デフォルトの名無しさん
22/04/05 08:14:13.65 /ryaTu8Q.net
なんかバカが勝手に盛り上がってて藁
どこのチンカス野郎がマス書いたコピペジェネレータと言語標準じゃ全く次元が違うだろ
はい勝った
完膚なきまでに勝った
ここを君を導きたかった
勝ち俺の勝ち
ジェネリクス否定
矛盾
ジェネリクスはコンパイラによるコードジェネーション
勝ち俺の勝ち
勝ち完全
フルに勝ち
勝った
見事に勝っちゃったねえ
レスバ見てたけどそこに導こうとしてるのはわかったよ
そっちに行くな!って思ってた
そもそもコンパイラがコードジェネレータとかワロス
本質的には同じでないわけでガイジがコピペしてるからなあ
そっちに行っても負けは確定する
462:デフォルトの名無しさん
22/04/05 08:37:48.08 VqqpMSri.net
>>456
でもそういう奴等はわかりやすい地雷で助かる
IT業界は人手不足だって言われているのは「自走できる」人材の不足なのに、どっかのYoutuberやプログラミングスクールの言うことを鵜呑みにしてRailsで作成したポートフォリオをドヤ顔で出してくるような奴は俺が企業の採用担当だったら速攻で落とすわ
463:デフォルトの名無しさん
22/04/05 09:19:59.73 pUAnaqqP.net
>>454
Goはおもちゃ言語だから
464:デフォルトの名無しさん
22/04/05 13:07:10.50 dZMax2uf.net
ひろみGO
465:デフォルトの名無しさん
22/04/05 14:27:50.37 ZwTPjiXX.net
>>455
AI関連の前に科学技術系のライブラリをpythonでって流れは結構あった。
そこらへんがperl、rubyにはなかった。
float回りをいじくると途端に言語や開発環境が汚くなるわけだが、その辺を躊躇しなかったってのが良くも悪くもある。
466:デフォルトの名無しさん
22/04/05 14:54:27.96 hteyj+L8.net
>>455
せやな、現在の圧倒的なPython人気はAI関連が充実してるからやな
でもGoogle社内の開発言語にもっと昔から採用されてたのにはAIは関係ないやろ
>>462
NumPyやSciPyみたいなのがキラーアプリだと?
もっとよく思い返すとRed Hat、Debian、GentooなどのOSでパッケージマネージャなど様々なツールがPythonで実装されてたし、
数値計算とか関係なく、スクリプト言語のデファクトスタンダードとしての地位を2000年ぐらいには確立してたね
キラーアプリがあるからというよりは、単純に開発者コンセンサスを得やすい言語だったんだろうな、と思ってきた
467:デフォルトの名無しさん
22/04/05 15:30:06.85 ZwTPjiXX.net
>>463
いやそのころのpythonのパッケージ管理ツールって相当ひどかったぞ。
まともに依存関係を解決できることなんてほとんど期待できなかったし。
まあ今もそういう傾向はあるが。
468:デフォルトの名無しさん
22/04/05 15:49:46.89 Zafpq7jd.net
pythonは2007年ごろには将来デスクトップ系ではスクリプトの中核になるから小さな社内スクリプトやプラグインのスクリプトは可能な限りpythonにしましょうってずっと自分は運動してたわ。
幸い反対する人もほとんどいなかったな。
もちろんアプリはpythonでは書かないが。
AIなんかはあまり関係ないなぁ。
469:デフォルトの名無しさん
22/04/05 15:55:55.07 VZWFnuGC.net
40-300行ぐらいのpythonスクリプトは便利だわ
Windowsだと特にshell(cmd)の扱いづらさが際立つし
470:デフォルトの名無しさん
22/04/05 16:01:09.15 Om5krohy.net
googleはyoutubeや検索エンジンをpythonで実装してたもんな
それでpythonが注目されだした
確か書き換えたらコード量が大幅に減ったのとメンテナンスコストが下がったんだ
当時はC++,java,PytohnがGoogle三大言語だった
今は知らんけど
471:デフォルトの名無しさん
22/04/05 16:03:31.17 Zafpq7jd.net
pythonはmayaのプラグイン組み込み言語でもあったから
行列やベクトルや虚数を使った回転などを多用する層が
そこで増えていったってながれもあるやろな。
472:デフォルトの名無しさん
22/04/05 16:19:20.26 I+HzSIOd.net
カーニハン、ロブ・パイクが1999年に出したプログラミング作法(The Practice of Programming)では Perl, awk, C++, Java, C で処理速度とソースコードの行数表にしてた。
473:デフォルトの名無しさん
22/04/05 17:31:17.76 kTsaT80P.net
ポストPythonってJuliaなの?
474:デフォルトの名無しさん
22/04/05 17:35:57.79 82POVtug.net
>>470
Rustだろうな
Web業界はRustに移行しはじめている
475:デフォルトの名無しさん
22/04/05 17:36:28.83 X/Z+fkc6.net
ベターPythonかもしれないがポストPythonではないだろう
476:デフォルトの名無しさん
22/04/05 18:09:13.50 Zafpq7jd.net
rustは広くは使われないだろうねぇ。
システム部分以外は
ルーズで簡単で気にかけることや
独特な概念が少ない言語でないと広く使われない
プログラミング未経験者が数日である程度書ける程度のでないと
477:デフォルトの名無しさん
22/04/05 18:21:07.39 RXEj+ZGQ.net
そこでKotlinですよ
ベターJavaの位置付けで学習コストも低い
Scalaほど複雑でもなく、初心者にも手を出しやすいからRustよりはWebでは使われるんじゃないかね
Goは学習コストが低いとかで誤魔化してるだけで、一昔前の使いづらい言語みたいな感じ
478:デフォルトの名無しさん
22/04/05 18:54:22.88 iyhQru73.net
>>471
所有権気にしなきゃいけないのにPythonの後継は無いなぁ。
>>52
>c++とhaskellあたりを学んでおけば大したことないし
とかいう世界だろ。
479:デフォルトの名無しさん
22/04/05 19:19:35.56 4JjDvpWU.net
>>475
理解する気がないから勘違いしてるのだろうけど
所有権なんて難しい話ではなく非常に簡単なことだぞ
このスレにもRustのコードが多数書かれてきてるようだが何か難しいことや特殊なことあったか?
480:デフォルトの名無しさん
22/04/05 19:48:47.33 3noiRnfQ.net
Kotlinなんてぱっとせんもん一生泥から出てこんやろw
webでは絶対流行らない
Javaで既に作られてるもんはわざわざKotlinにしようなんてならんし
Javaに慣れ親しんでる層はJava17を導入するやろな
Javaみたいなのを毛嫌いする層はそもそもKotlinに見向きもしてないし
481:デフォルトの名無しさん
22/04/05 20:20:35.48 fN/L9gSF.net
まあKotlinはswiftと同じ位置づけで表には出てこない気がする
482:デフォルトの名無しさん
22/04/05 20:25:45.56 8mvJZb/O.net
kotlinとjavaは相互運用可能なのに、わざわざjavaを選択する発想なんて出てこないだろ
goは学習コスト低い分、この先流行りに乗って採用する企業は増えるかも知れんが、機能不足故にいずれ見離されるんじゃない?
rustは初心者には複雑すぎるし、それこそweb開発でメリットがあまりない
kotlinはともかく、rustやgoが10年先も使われるイメージが想像できない
483:デフォルトの名無しさん
22/04/05 20:27:09.43 fN/L9gSF.net
これからは同じ内容をどれだけ短くてわかりやすく書けるかと言うことに
各言語は対応せざるを得ない状況になる
484:デフォルトの名無しさん
22/04/05 20:28:17.56 3noiRnfQ.net
いや逆や
わざわざKotlinをwebで採用する意味ないし
今もそんなことしてる会社は物好きな少数のみ
485:デフォルトの名無しさん
22/04/05 20:28:18.67 82POVtug.net
まあJavaやpythonに比べたらkotlin,swift,rustなんてまだまだでしょ
URLリンク(i.imgur.com)
486:デフォルトの名無しさん
22/04/05 20:33:11.57 3noiRnfQ.net
goは流行ってるし機能拡張していってるんやから機能不足やから廃れるってことはないやろ
つい最近genericsが導入されたやん
フレームワークにしろ何にしろ使う人が増えればより充実して行くもんよ
こういうのは流れが大事
流れがないswift、Kotlinが今更伸びることはないやろ
487:デフォルトの名無しさん
22/04/05 20:40:11.88 fN/L9gSF.net
最初の言語としてKotlinやSwiftは選びたくない
488:デフォルトの名無しさん
22/04/05 20:51:09.86 RriiMuS9.net
>>479
むしろRustだけは生き残ることが確実
Rustの以下のメリットを持つ代替言語が存在しないため
・ガベージコレクションを必要とせずC言語と同等の速さと省メモリを実現
・各種データ競合やメモリ使用の安全性を保証
・現代的な各種プログラミングパラダイムを洗練して採り入れており非常にプログラミングしやすい
489:デフォルトの名無しさん
22/04/05 20:52:42.92 fN/L9gSF.net
一番最初の言語に選びたくないNo1は今のところRustかな?
まあそんなことにはならないでしょうが
自分は最初はBASICだった
もう使うことはないと思ってたらAppleiiのエミュにBASICが入ってて
使ったことはないのに適当にやっても結構動くものが作れた
490:デフォルトの名無しさん
22/04/05 21:04:57.35 jsmatYo9.net
CからC++に行かずにRUSTに行く
491:デフォルトの名無しさん
22/04/05 21:11:03.50 ks20fz6N.net
>>487
たぶんそれが正解
スクリプト言語程度で良い用途は別として
普通にちゃんとしたプログラミングをするならばC言語で基本をまず学んだ上でRustがベストかな
492:デフォルトの名無しさん
22/04/05 21:14:31.44 jsmatYo9.net
Cからちょっとだけアセンブラ(オプションで出力させたものを解読できる程度)もありかも知れない
493:デフォルトの名無しさん
22/04/05 21:17:03.29 fN/L9gSF.net
C → Rust
その人たちは何がやりたくてプログラミングするのか疑問だなあ
494:デフォルトの名無しさん
22/04/05 21:18:27.03 /ryaTu8Q.net
>>474
Kotlinやろうとしたら必然的にJVMとJavaも勉強しないとだよね
学習コスト3倍じゃん
バカじゃん
495:デフォルトの名無しさん
22/04/05 21:18:44.27 hteyj+L8.net
システムプログラミングでしょ
496:デフォルトの名無しさん
22/04/05 21:28:32.93 8mvJZb/O.net
rustはシステムプログラミングとか、低レベルプログラミングの分野で生き残ると思いますよ
あくまで俺が話してるのはweb系の話
ちょっと主張を代えてしまうようで申し訳ないけど、俺が主張したいのは、kotlinが来るというよりも、goやrustがこの先web開発で盛り上がりを見せるとは思えないということです
497:デフォルトの名無しさん
22/04/05 21:28:36.30 jsmatYo9.net
Javaやってた人が楽したくてkotlin触るのがほとんどだと思うわ
498:デフォルトの名無しさん
22/04/05 21:32:44.23 u+FS9OX1.net
>>493
サーバーサイドに関してはpython一択になると思うよ
今の若手がpython推しなんだからそいつらが偉くなったらみんなpythonになる
現に俺が管理して利権として享受してるサービスをpythonでリプレースしようという案が出てきてる
全力で防いでるが
499:デフォルトの名無しさん
22/04/05 21:33:48.12 m6fZyHop.net
>>493
大規模ウェブサイトのバックエンドにgoやらrustやら使う事例は多いからweb系とひとくくりにするのもちょっと不正確では
500:デフォルトの名無しさん
22/04/05 21:33:58.15 MlP9V3nG.net
>>493
うちはWeb系だけどRustを使っています
WebAssemblyでRust以外に良い選択肢がないと思います
実際に一般的な調査でもWebAssemblyで使う言語の1位がRustですね
501:デフォルトの名無しさん
22/04/05 21:34:05.83 ZGNch3sg.net
FlutterとセットでDartは?
502:デフォルトの名無しさん
22/04/05 21:38:03.57 DitKiC+e.net
railsやってた人が動的型付言語で大規模開発は
もう嫌じゃーとなったときにどこに行くかねえ
JVMがgoかrustか
個人的にはgoは無いな…
503:デフォルトの名無しさん
22/04/05 21:43:41.67 fN/L9gSF.net
>>499
TSかな?
504:デフォルトの名無しさん
22/04/05 21:44:13.55 8mvJZb/O.net
>>496
そこなんですけど、今goが流行ってるのってコンテナ構成にマッチしていたり、並行処理が得意だったりメリットがあるからだと認識しています。
とは言え、goはパターンマッチングがやりにくかったり、関数の戻り値が複数あったりで、お世辞にもコーディングが快適とは言えない。
なので、goに代わるkotlinや swiftくらいのちょうどいいレベルの言語仕様の言語が出てきて、使われるようになるんじゃない、みたいな見解を持ってます。
この意見がスレタイとマッチしてなくて、申し訳なかった
505:デフォルトの名無しさん
22/04/05 21:44:21.70 u7gEIfJv.net
>>499
RubyとRustはコード記述が似てる面多いね
クロージャ(ラムダ)で |引数| になる点とか
506:デフォルトの名無しさん
22/04/05 21:47:59.27 cdGLCT5H.net
実際の流行りと5chプログラマーのrustへのお熱っぷりには乖離があると思うが
プログラマーがそれだけ好くんだから大した言語よな
go嫌いはif err != nilがキモく感じて嫌がってるのかもしれない
507:デフォルトの名無しさん
22/04/05 21:48:34.22 ZJzYuLv9.net
>>501
RustならGoの戻り値の問題はいわゆる代数的データ型となる値包含enumでシンプルかつ扱いやすく解決しているし
パターンマッチングについても同じくenum拡張されて非常に強力やな
508:デフォルトの名無しさん
22/04/05 21:54:38.07 ZwTPjiXX.net
rust信者はただサンクコスト回収のために必死になってるだけだわ。
そういう活動が逆効果ってことを全く理解していない。
509:デフォルトの名無しさん
22/04/05 22:03:45.09 oCmbM95T.net
現実問題としてRustに勝てる言語が出現してくる気配すらないのはマズいよな
当面はRustが最終解なのかもしれないが
> Rustの以下のメリットを持つ代替言語が存在しないため
> ・ガベージコレクションを必要とせずC言語と同等の速さと省メモリを実現
> ・各種データ競合やメモリ使用の安全性を保証
> ・現代的な各種プログラミングパラダイムを洗練して採り入れており非常にプログラミングしやすい
510:デフォルトの名無しさん
22/04/05 22:26:51.26 vLZKRt0y.net
どういう理屈でコスト回収するんだろ
511:デフォルトの名無しさん
22/04/05 22:49:42.89 CALU2HjK.net
信者というかワナビーじゃないの
サンクコストに感じるのは
512:デフォルトの名無しさん
22/04/05 22:56:37.28 A4DfkOI9.net
食わず嫌いのアンチがコストがかかると思い込んでいるだけではないか
むしろRustは様々なコスト削減になる
プログラミング&デバッグ開発効率が良くなるだけでなく
高速化と省メモリ化によりサーバーやクラウド類の支出コスト削減も大きい
513:デフォルトの名無しさん
22/04/05 23:13:12.17 jhOIIm2D.net
>>502
rubyしか使ってなかったときは気づかなかったが
rustも使うようになってrubyのブロックがくっつく形がキモく感じるようになった
ruby.foo {|x| x}.bar {|x| x} # ←キモい &blockが一個しか渡せない問題もある
rust.foo(|x| x).bar(|x| x, |y| y) // ←スッキリ
514:デフォルトの名無しさん
22/04/05 23:21:49.33 1v6++hVm.net
すでにC++, C#, Haskell, Scala, Rustといろいろ渡り歩いてるから
サンクコストなんて感じてないんだよなぁ
Rustの次に移行したい面白い言語が見当たらないからRustに留まってるだけで
515:デフォルトの名無しさん
22/04/05 23:22:32.66 fN/L9gSF.net
どちらにしても|x|と言う表現は個人的にはキモいと思う
洗練されていない
rubyを毛嫌いしていたのもそれと冒頭の大文字小文字でpublicかどうか決めてる部分
516:デフォルトの名無しさん
22/04/05 23:25:05.56 EpygGO7e.net
rubyはブロックを1つ渡すときのやり方に特化されてるくせにメソッドチェーンで
ブロック渡し使うとなんかキモいよな
Rubyのクロージャでも{}を省略できたら見た目が良かったかもな
517:デフォルトの名無しさん
22/04/05 23:26:31.88 /ryaTu8Q.net
実際問題、GoのerrorはEitherだから、実は最新の設計なんだよね
518:デフォルトの名無しさん
22/04/05 23:28:52.60 shnfpWMI.net
>>514
代数的データ型ならばそれを便利かつ容易に扱える様々な仕組みがないとメリットがない
Goにはそれがない
Rustにはそれがある
519:デフォルトの名無しさん
22/04/06 01:16:54.79 5q0U6A70.net
GoのマルチリターンはEitherのつもりなのにTupleだし、沼設計としては最先端なんだよな…
理想: e+v
現実: (e+1)*(v+1)=(e+v)+ev+1
結果が完全な失敗と完全な成功だけじゃないところもまた、現実のそのものである。
520:デフォルトの名無しさん
22/04/06 03:20:12.66 wPZ6Wy+h.net
>>510
ほんとここだけは直してほしい
Ruby全盛時に設計しちゃったもんだから
余計な要素が入り込んだ
521:デフォルトの名無しさん
22/04/06 06:13:11.45 X7GvwD6X.net
>>510
これなあ
522:デフォルトの名無しさん
22/04/06 07:11:19.53 XNY/VGtp.net
GUI のアプリ開発に向いてるのはどれなの?
C++やC#の次のイメージだけど。
523:デフォルトの名無しさん
22/04/06 08:28:24.14 FubAROXf.net
>>476
そういうことを言っているからRustユーザーは駄目なんだ。
ヒープもスタックもメモリ管理も知らないGC前提の高級言語のユーザーが所有権とかmoveとかを理解するまで、一体いくつ新概念を理解しなきゃいけないか。
理解を助けるメタファーもろくに無いし、「非常に簡単」はありえない。
まぁ、
>c++とhaskellあたりを学んでおけば大したことないし
とかいう発想だから、Rustユーザーは自分達がどれだけ他言語ユーザーから乖離しているか気づいていないか。
524:デフォルトの名無しさん
22/04/06 08:38:33.64 ByE3BIzU.net
Rust使い人は使えばいい
メモリ管理などの低レベルなことに専心したくないから大多数の人はGC言語を使ってるのであって
Rust必須になればみなプログラムやめるよ
メモリ管理は関心の集中先ではないからなあ
525:デフォルトの名無しさん
22/04/06 08:42:49.90 ByE3BIzU.net
使い人→使いたい人
526:デフォルトの名無しさん
22/04/06 08:59:55.51 ERAAutfZ.net
>>521
食わず嫌いで勘違いしすぎていて痛すぎる
メモリ管理するためのコードを書くのがRustだと勘違い?
例えばRustのプログラム例>>312のどこでメモリ管理してる?
メモリ管理なんて面倒なことするコードを書きたくないからRustを使うのだよ
527:デフォルトの名無しさん
22/04/06 09:01:33.33 ByE3BIzU.net
GCだったらそれすら意識しなくていい
528:デフォルトの名無しさん
22/04/06 09:03:47.07 ByE3BIzU.net
move |bits|
&
529:デフォルトの名無しさん
22/04/06 09:10:21.22 aOWfxLhU.net
>>525
それの何を問題視してるのかしら
moveはクロージャに変数キャプチャするかどうかでGC言語にもある概念
&は単なる参照でこれもGC言語にもある概念
530:デフォルトの名無しさん
22/04/06 10:56:17.94 X7GvwD6X.net
>>524
それなぁ
531:デフォルトの名無しさん
22/04/06 11:00:12.47 X7GvwD6X.net
>>521
2種類の人種がいるんだよ
自動車産業に例えたら、(1)地方の工場勤務の期間工と(2)研究開発センターのエンジニア
(1)はRustは使用しなくていい。というか理解できなくて使えない。Pythonとかで頭を使わないコード書くだけだから。例えるなら、ラインで組み立て作業を1日延々しているだけのルーチンワーク要員。
(2)はRustなどを使用してシステムプロラミングWebassemblyなどでローレイヤーや基盤を作っていく。例えるなら自動車のエンジンやデザインの設計者。
532:デフォルトの名無しさん
22/04/06 11:12:27.97 P2epzghE.net
普通のプログラマー
PythonでもJavaScriptでもRustでも用途毎に使い分ける
似非プログラマー
特定のスクリプト言語しか使えない
533:デフォルトの名無しさん
22/04/06 11:18:53.29 UtHY9/K6.net
このスレは期間工限定です
534:デフォルトの名無しさん
22/04/06 11:27:29.43 XB6J8/aS.net
Rustでメモリ管理はしなきゃいけないでしょw
双方向リストを普通に書くと循環参照でるよね
WeakとRcをプログラマが手動で必死に使い分けてなんとかするのがrust
一方で循環参照もなんとかケアしてくれる(かもしれない)のがGC言語
これはRustを批判するんじゃなくて
GC言語の価値を改めて評価できるという例
535:デフォルトの名無しさん
22/04/06 11:27:36.38 XNY/VGtp.net
>>530
呼ばれた気がした
536:デフォルトの名無しさん
22/04/06 11:29:06.13 PUvuY8jT.net
>>505
Rustを難しいと勝手に思い込んでいるようだけどそれは勘違い
C言語とあともう一つ今どきのプログラミングパラダイムを備えた言語を使いこなせる人ならばRustは容易に楽に習得できる
つまり普通にまともなプログラマーにとっては難しいことは何もない
537:デフォルトの名無しさん
22/04/06 11:32:57.60 SQHVCoBe.net
>>531
双方向リストなんてライブラリにあるのを使うだけだからそんなの関係ないだろ
同様にベクターコンテナもライブラリにあるのをそのまま使うだけ
それとも君は毎回自作してるのかね?
538:デフォルトの名無しさん
22/04/06 11:38:59.86 XB6J8/aS.net
RustにGCが無いのは特徴であり
この言語の方向性においては利点でしかない思ってるよ
GC無しでRAIIでなんとかしていこうず!という潔い言語
中途半端にならなくて清々しいよ
539:デフォルトの名無しさん
22/04/06 11:41:06.57 j3mCjXSb.net
>>531
GC言語とはガベージコレクションが必須な言語
一方でC/C++/RustはGCが必須ではなくGCが必要な用途の時だけGCすればよい言語
だからどうしても循環参照などでGCが必要ならばC/C++/RustでもGCをするモジュールなどが用いられている
540:デフォルトの名無しさん
22/04/06 11:42:07.19 azRXBWjT.net
>>528 >>529
>>471が「RustがPythoneを置き換える」とかいう妄想を垂れ流しているから突っ込んだだけだよ。
バカはトンカチを持つと何でも釘に見えると言うけど、Rustユーザーはその典型だな。
541:デフォルトの名無しさん
22/04/06 11:46:18.46 iij/35sY.net
>>531
またそんなデマカセを書いてるな
ヤラセ記事ならともかく実際のプログラムでそんな変な実装をしている例を見たことがない
妄想で叩くのはやめとけ
542:デフォルトの名無しさん
22/04/06 11:46:52.40 azRXBWjT.net
>>533
C言語とあともう一つ今どきのプログラミングパラダイムを備えた言語を使いこなせる人……つまり普通にまともなプログラマー
なるほど、PythoneやJavaだけを使っているプログラマーは普通でもまともでも無いということを主張したいんだな。
543:デフォルトの名無しさん
22/04/06 11:50:43.24 yFuiayyW.net
>>537
でもその人の書き込みを見たら
Web分野と限定してるね
Web分野でのPythonなんてPythonしか使えない人しか採用しない状況だから
話としては合ってるんじゃないかな
544:デフォルトの名無しさん
22/04/06 11:54:58.50 YS4iOCfL.net
>>539
それはそうやろw
Javaしか出来ないなら土方で間違いない
545:デフォルトの名無しさん
22/04/06 12:32:21.96 rwS/Q696.net
>>540
webでもPython置き換えとしてRustが出てくることは無い。
web用途だからといって所有権だのスコープ・ライフタイムだのを回避できるわけじゃないしな。
>>541
Rustユーザーが初心者・初級者を馬鹿にするようじゃなぁ。Rustの失敗は約束されたな。
546:デフォルトの名無しさん
22/04/06 12:44:42.90 4NhGLksY.net
>>542
意味不明だな
唐突に所有権とか言い出して何が言いたいんだ?
547:デフォルトの名無しさん
22/04/06 12:58:29.92 6roFDaHL.net
>>536
えっ・・・?GCがないからRust最強他はクソじゃなかったんですか?(´∵`)
どこぞのチンカスメンがマス書いた野良イブラリでGCとかRustユーザーのおじさんたちって・・・(´∵`)
548:デフォルトの名無しさん
22/04/06 13:56:24.32 2Yw46+Tv.net
>>544
RustやC++は非GC言語やで
549:デフォルトの名無しさん
22/04/06 14:20:43.99 1nRPgXLc.net
また意味不明の非GC言語なんて言い出してんのかw、リファレンスカウント使ってんだからそんな意味のない宣伝もうやめろよ?
550:デフォルトの名無しさん
22/04/06 14:36:07.84 6roFDaHL.net
は?今の時代にリファカンとかw
551:デフォルトの名無しさん
22/04/06 14:41:06.01 6A9Aeuem.net
ここはおじさんスレだからそれを楽しめ
552:デフォルトの名無しさん
22/04/06 14:46:08.13 Fm2KF3vu.net
参照カウントのガベージコレクション
URLリンク(developer.mozilla.org)
これは、最も素朴なガベージコレクションアルゴリズムです。このアルゴリズムは、"あるオブジェクトがもはや必要ない"ことを、"あるオブジェクトがその他のオブジェクトから参照されていない"ことと定義します。あるオブジェクトは、それに対する参照がゼロの時にガベージコレクト可能であると見なされます。
553:デフォルトの名無しさん
22/04/06 14:48:22.40 7ui2nPA0.net
>>517
引数の最後のブロックを特別扱いで記述できる文法はrubyからgroovyを経由してkotlinにも引き継がれていて、わりと欠かせない記述方法になってる
ここの URLリンク(dogwood008.github.io)
これみたいな記法を頻繁に使うからいまさら無くなっても困る
lock (lock) {
sharedResource.operation()
}
554:デフォルトの名無しさん
22/04/06 14:57:27.14 rwS/Q696.net
>>543
スレの流れが追えていないのに口を出すなよ。最初の方の>470 >471 >475から所有権出てるわ。
ChMateとか導入したら?
555:デフォルトの名無しさん
22/04/06 23:24:49.88 DtmD4s0L.net
>>551
その所有権がどうしたんだい?
所有権が理解できないなら参照も理解できないから
参照渡しと値渡しの区別もつかないことになる
どの言語でもそういう話は理解しないと使えないから
所有権の概念があるかどうかで困るプログラマーは存在しない
556:デフォルトの名無しさん
22/04/06 23:41:02.75 6roFDaHL.net
コードの所有権もない派遣さんが何か言ってらw
557:デフォルトの名無しさん
22/04/07 01:43:23.21 tEZE72Zs.net
#[derive(Clone, Copy)]
struct Code(String);
558:デフォルトの名無しさん
22/04/07 07:31:09.34 zb08jYei.net
>>552
こういうRustユーザーが多いなら、RustのHaskell化は約束されたようなものだな。
Rustコミュニティー全体がその認識なら致命的かと。
559:デフォルトの名無しさん
22/04/07 07:42:19.84 wRPEswS2.net
Rustは当面プログラミング言語の王者として君臨し続けるのではないか
高速かつ省メモリかつ安全という他の言語が満たせないRustのアドバンテージを崩せる新言語が登場しない限り
> Rustの以下のメリットを持つ代替言語が存在しないため
> ・ガベージコレクションを必要とせずC言語と同等の速さと省メモリを実現
> ・各種データ競合やメモリ使用の安全性を保証
> ・現代的な各種プログラミングパラダイムを洗練して採り入れており非常にプログラミングしやすい
560:デフォルトの名無しさん
22/04/07 08:03:31.90 /n3eSctb.net
俺はRustは廃れるに一票
このスレ見てる限り信者がカルトすぎる
Go信者が可愛く見えるレベル
そもそも設計で差を付けられるレベルなら、言語に拘る意味もそこまでない
このスレがそういう趣旨だというのもあるとは思うが、言語への執着が酷すぎ
561:デフォルトの名無しさん
22/04/07 08:10:05.04 zl/syFdq.net
はっきり言って近代的な言語なら仕様も習得もそのコーディングもどの言語でも大差ないんよ
そうなると言語自体として本質的な有利な面を持つRustがじわじわと広まる結果となるかな
562:デフォルトの名無しさん
22/04/07 08:56:02.87 /n3eSctb.net
>>558
> どの言語でも大差ない
だから敢えて独自路線を、というのがGoの当初の目的でもあったろ
(上手く行ってるかは別)
> 本質的な有利な面を持つRust
俺はあれは筋が悪いと見てる
寿命管理はmoveではなくupが多分正解で、これを綺麗に書ける言語が出てきたらその瞬間終わる
(それ以前にGCの方がいいが)
あとRustの問題は、多分プログラマが上達しない事
これは長期的には絶望的に不味い
「C++はプログラマを育てる言語だ」というのはC++始祖の持論だが、これは考える事を強いるからだ
Rustの場合は(このスレ見る限り)「コンパイラが全てやってくれる!考えなくて済む!」のノリのようで、これは絶望的
Rustは「C++の特定の使い方」に近似出来、コンパイラがその形式を強制する
だからC++をこの形式で使っている連中は確実に移行する
そうではないC++使いが移行する事はない
Rustを使えばデバッグしなくて済むから楽!とか言ってる初心者連中は戦力にならない
というかね、根本的なところで、寿命管理や所有権とかは「面倒」であって「苦労」はしない
だからやらなくて済むのならそれが一番いいが、
やれと言われればやるだけであり、手間が増えるだけで、出来ないものでもなく、それ自体には苦労もしない
だから根本的な立ち位置がイマイチなんだよRustは
そしてこれに苦労するような連中は、そもそもプログラミング能力が低いだけなのだから、
そこで苦労する事は糧となるから頑張れ、でもある
これが無理だからGCを使うのだ、という事に対しても俺は肯定的で、それでいいと思うが、
Rustが目指しているのは「GCが無いと困る馬鹿でも補助輪を付けてチェックするからなんとかなり、
GC無し並の速度が出ます」であって、結局は馬鹿向けの補助輪でしかない
そこで苦労する程度ならガチでC++で苦労した方が上達するからそうしろ、でしかない
(まあ馬鹿でも何とかなるように、というのが言語の進歩でもあるのだが)
563:デフォルトの名無しさん
22/04/07 08:56:07.07 hOTZf/Ps.net
言語の普及について語るときにキラーアプリを語ればいいと思う
Rubyが普及したのはRuby on Railsがあったから。
Pythonが普及したのはAIライブラリ(tensorflowなど)があったか。
RustにはRubyのRoRやpythonのAIに相当するものがあるか?もしくはこれからでてくるか?
そのヒントとしてはWebAssemblyにあるように思う。
564:デフォルトの名無しさん
22/04/07 09:01:27.48 5wMGrsUW.net
:::.... /|\||
//|'\\.... ...:::.. .......
|/ ,'|-、 \\
|/ ,'|-、 \\\
|/ ,'|-、 \\\|.... ...:::.. .......
|/ ,'|-、 \\\|:..。..... ...:::.. .......
|/ ,'|-、 \\\|__|
|/ ,'|-、 \\\|:...|ヽ .... ...:::.. .......
|/ ,'|-、 \\\|::::| |::.....
| ̄ ̄ ̄ ̄ ̄\、'\\|;;:.|_,,|___
| □□ □□ | |\, \|;;::.... |\
| □□ □□ | | | ̄ ̄ ̄ ̄|\;: . | |
| □□ □□ | | |□□□□| |::...| |;;:
| □□ □□ | | |□□□□| |::...| |:;:./
| □□ □□ | | |□□□□| |::...| /
| □□ □□ |.._|__,,|□□□□| |::...|/
,,| ̄ ̄ ̄|| ̄ ̄\≡\,□□□|/ ,/
今北産業 [IMAKITA INDUSTRIAL CO.,LTD]
(1978~ 日本)
565:デフォルトの名無しさん
22/04/07 09:02:23.11 qcT6PBEO.net
RustのようにCと同等の速さと省メモリの言語が出てくればRustが敗れる可能性が出てくる
現時点では存在しないためRustの天下が続きそう
566:デフォルトの名無しさん
22/04/07 09:26:02.84 /n3eSctb.net
>>560
> WebAssembly
ねえよ馬鹿タレ
というかこのWebAssembly推しは一体何なん?
シェア的にもあり得ないし、ググラビリティもJSに比してゴミ以下だろ
Webの場合はそもそもクライアントサイドで何が出来て何をやるべきかが分かってない事が多く、
つまり、他言語で既に十分出来てる連中でもクライアントサイドを書く時には、まずこれを理解せねばならず、
一番手っ取り早いのはJSであり、これを避けては通れない
JS/TSである程度クライアントサイドをこなしてからなら他言語でWebAssemblyでもいいが、
JSに比してググラビリティも0に近いWebAssemblyでクライアントサイド入門とか、ただの自殺
俺はWebAssembly推しは完全にミスリードで、糾弾されるべきだと思ってるよ
この状況で、JSに比してWebAssemblyが主流になる状況は、現在のところあり得ない
だいたい、Rustをわざわざ学んでWebAssemblyするくらいなら、上記のようにそれ以前にJSを通るし、
ほぼ全部のサイトでJSで十分だからこそ圧倒的シェアになってる
元々JSだったのは「ソースじゃないと信頼出来ない」という事であり、
それが「最早そういう状況ではないのでバイナリでもいい。速さ重要」となってきているからこそのWebAssemblyではあるが、
ならばそのうち「もうネイティブバイナリでよくね?サンドボックスを仮想的に作ろう。これが最速」となって、
ネイティブバイナリをブラウザ内で実行する状況になって終わると思うけど
仮想周りは本当に進歩したし、何故か知らんがアメリカ人はエミュには執着するしで、これも時間の問題
567:デフォルトの名無しさん
22/04/07 09:37:09.90 Nyl3OsEM.net
確かにWebAssemblyではガベージコレクションのないRustが一強になってるな
WebAssemblyにおいてreference typeがサポートされたためDOM操作の壁が大きく低くなり実用的となったことも大きい
今後Rustによるフロントエンドが更に進むことが確実となった
568:デフォルトの名無しさん
22/04/07 10:03:19.72 6mRJTF59.net
>>559
世にあるc/c++メモリ周りの扱いによるバグやセキュリティホールの殆どは、「GCがないと困るバカ」以外の人間が書いているわけだが。
569:デフォルトの名無しさん
22/04/07 10:10:10.15 hOTZf/Ps.net
>>563
おまえが(1)のタイプだということはわかったから黙ってくれw
(1)はRustは使用しなくていい。というか理解できなくて使えない。Pythonとかで頭を使わないコード書くだけだから。例えるなら、ラインで組み立て作業を1日延々しているだけのルーチンワーク要員。
(2)はRustなどを使用してシステムプロラミングWebassemblyなどでローレイヤーや基盤を作っていく。例えるなら自動車のエンジンやデザインの設計者。
570:デフォルトの名無しさん
22/04/07 10:18:58.15 /n3eSctb.net
>>564
> 確かにWebAssemblyではガベージコレクションのないRustが一強になってるな
今は、だろ
> (WebAssembly は将来的にガベージコレクションによるメモリー管理を行う言語をサポートする 高レベルの目標 を持っている事に注意してください)。
> URLリンク(developer.mozilla.org)
要するに今はGCの直接サポートがないから
GC言語だと436のようにGC部分も自前で用意してやる必要があるが、
直接サポートされれば丸々この部分は落とせ、436も完全に
「Rubyでもクライアントサイドが書ける」と言ってもいいくらいの物になるのだろうよ
この意味では、Ruby(436)のアプローチは正しい
とはいえ、肝心の(上記リンクの先)
> URLリンク(webassembly.org)
に「GCをこれからサポートする予定です!」という記述がないのだが、これは落とされたのか?
落とされてないのなら、サポート後はJS嫌いな奴はRyby/Python等でクライアントサイドを書くのも既定路線
ガチ最速目指すのならC++で書くのも既定路線
Rustは「『C++では無理な馬鹿にとっては』最速」というだけであり、この冠詞が取れない限り厳しいよ
C++はWebをやろうとしてないだけであって、出来ないわけではないので
RoRの状況知らんが、もしかして一番喜んでるのはRoRの連中かもよ?
これまで全部サーバーサイドレンダリングするか、諦めてJS書くかしかなかったのが、
Rubyで全て完結するようになるから。
(既にasm.js使ってJSは書いてないかもしれんが)
571:デフォルトの名無しさん
22/04/07 10:23:06.36 /n3eSctb.net
>>565
> メモリ周りの扱いによるバグやセキュリティホールの殆ど
具体的にはどんな奴よ?
そしてそれがRustやJava等だと「自動的に」「どんな馬鹿が書いても」大丈夫だとでも?
572:デフォルトの名無しさん
22/04/07 10:29:46.01 FJnsEJOV.net
WebAssemblyでなぜ利用トップがRustで2位がC++なのか?
理由は簡単でGC言語は圧倒的に不利であるため
またWebAssembly自体でのGC導入が問題点多すぎで当面無くなったことも大きい
次になぜC++ではなくRustが1位なのか?
理由は簡単でRustの方が圧倒的にプログラミングしやすいため
Rustが有利なこと自体はWebAssembly以外の分野でも全く同じだが歴史の積み重ねの差がまだある
歴史的に新しいWebAssemblyでは後発言語の不利な点がないためRust有利が顕著に現れた
573:デフォルトの名無しさん
22/04/07 10:33:32.72 /n3eSctb.net
>>566
Rust信者は(1)のくせに(2)を気取ってる、勘違い意識高い系馬鹿だね
(2)なら最初からC++を使うし、そのスタイルがRustで強制しているスタイルと合致してれば、
これまた迷うことなく最初からRustを使うし、移行にも躊躇ない
だから正直、ここで信者がやってる布教なんて全く意味ないと思うんだけどな
ウザイだけで
574:デフォルトの名無しさん
22/04/07 11:27:45.58 wigEobQO.net
ビックテックがこぞって使ってるんだからほっといてもある程度は流行るでしょ
俺は楽に稼ぎたいしみんなにもそうなってほしいからRust推してるわ
575:デフォルトの名無しさん
22/04/07 11:35:37.24 gomi3ocO.net
>>570
決めつけは低能のあかし
576:デフォルトの名無しさん
22/04/07 11:37:41.07 QfJTmIv3.net
>>557
> 俺はRustは廃れるに一票
キミの投票はキミのカーチャンにでも見てもらってください
キミのカーチャン以外はそんな一票になんの興味も無いので
577:デフォルトの名無しさん
22/04/07 12:20:35.64 pGmXk0tm.net
Rustは順調にhaskell化しているな。
いい傾向だ。
578:デフォルトの名無しさん
22/04/07 12:40:08.52 OdIUq1Z2.net
Rustはプログラミング言語にとって根源的に重要な要素「データ競合やメモリ扱いで安全性が保証される」及び「C言語と同様に最高速&省メモリ」を両立する唯一の言語
新たな言語が出現しないとRust最優位は崩れないのではないか
579:デフォルトの名無しさん
22/04/07 13:09:09.76 a0EStXea.net
Ruby on Rails 7 で、脱Node.js, Webpack, Babel。
IE の死滅により、ES5 へ変換しなくても、ブラウザはES6 のままで動く
WebSocket を使う、Hotwire で、
近年、React に奪われたシェアを回復すべく、
SPA のgame changer を目指すのが、Railsの野望!
Rubyだけで、SPA になったから、React, Vue.js は今後どうなるのか?
Railsが、SPAのシェアを奪えるか
580:デフォルトの名無しさん
22/04/07 13:44:56.72 tEZE72Zs.net
>>564
RustWasmでDOM操作まともにやれるならやってみたいなと思って最近調べてるんだけど、
URLリンク(zenn.dev)
によるとReference Typesを使うとむしろパフォーマンスは下がるらしいし、JSにはまだ到底及ばないらしいんだよね
実際使ってみての感想とか、↑のベンチ取り方おかしいわヴォケとかあったら聞きたいんだけど、どう?
581:デフォルトの名無しさん
22/04/07 14:06:25.86 WjxXuLmC.net
Rustの話は専用スレ立ててそっちでやれよ
ウザイにもほどがある
582:デフォルトの名無しさん
22/04/07 14:34:20.48 86kfLMWB.net
>>578
それはWebのDOM要素とWebAssemblyでのReference Typesの話だろ
Rustなどの特定の言語の話じゃない
それすら理解できないやつが的外れな文句を言うな
583:デフォルトの名無しさん
22/04/07 14:43:19.94 hOTZf/Ps.net
>>578
そんな言論統制したら比較すれの意味がなるなるだろ
Rustの話を禁止したらここはGoの話題だけになりGoがRustに比べてはやってるんの?って勘違いする人がでてくる
584:デフォルトの名無しさん
22/04/07 17:08:40.53 6pGOygc2.net
>>580
実際そうだし何の問題もない。
585:デフォルトの名無しさん
22/04/07 17:13:11.30 uI5WJg3m.net
>>580
Rustは習得が簡単とか大嘘つくやついるしなぁ。
話題にするのはいいけど嘘八百はいかんよ。
586:デフォルトの名無しさん
22/04/07 17:15:20.82 pxHwe1Kf.net
>>582
Rustは簡単やろ
どこが難しい?
587:デフォルトの名無しさん
22/04/07 17:23:30.39 uI5WJg3m.net
>>583
所有権、ライフタイム、moveセマンティック、参照・借用、型システム、その他もろもろの概念を「ほとんど全部使わないと」まともなプログラムができないところ。
だから「C++とHaskellが使えればRustは簡単」とかいうアホなコメントが出てくる。
588:デフォルトの名無しさん
22/04/07 17:57:35.76 +6isarPd.net
>>584
僭越ながら横から失礼しますが、概念の数は学習の難易度とは比例しません。
個別の概念を合わせた結果、目的の用途に合致するようになるかどうかのほうが重要かと思います。
機械語だったら概念の数がRustとGoよりもずっと少なくなると思いますが、機械語を使えばプログラミングしやすくなると思いますか?
589:デフォルトの名無しさん
22/04/07 17:58:57.87 K7k5hu80.net
なるでしょ
文法が少ないからGoは誰でも簡単に使えるのだから
590:デフォルトの名無しさん
22/04/07 18:23:34.25 6J24GmAj.net
>>568
全ての問題が解決すると思ってるのは馬鹿なので相手にしなくて良い
ゼロイチの議論しかしない人もそう
人間誰しも馬鹿な間違いをする可能性があって、間違いを見逃す頻度を大きく下げられることに価値がある
591:デフォルトの名無しさん
22/04/07 18:37:02.12 D5y31O0v.net
>>586
でも両方書ける人はGoよりRustの方がプログラミングしやすいと100%答える現実を見ると
Goは言語機能不足という感じやね
592:デフォルトの名無しさん
22/04/07 18:50:26.86 6pGOygc2.net
>>588
>でも両方書ける人はGoよりRustの方がプログラミングしやすいと100%答える現実を見ると
そんな現実はお前の脳内にしかない。
593:デフォルトの名無しさん
22/04/07 18:56:45.12 wax9VJjI.net
Rustも使いこなせる人でGoの方がプログラミング使いやすいと言う人を見たことないな
こればっかりはGoの貧弱な言語仕様では仕方ないところかと
594:デフォルトの名無しさん
22/04/07 18:56:54.01 pGmXk0tm.net
>>585
「概念の数が増えない段階なら」学習は簡単でしょうな。ADDとかの概念そのものは簡単に学習できる。
ただ、機械語の場合はメモリの位置にも機能&概念があるから、それらを含めると「概念の数が少ない」とは言えない。
あと、
>>584
目的の用途に合致するようになるかどうかのほうが重要かと思います。
というのは学習においては成り立たなくて、「すでに習得した概念 (日常生活なども含む) に沿っているか」の方が重要。
例えばオブジェクト指向はいろいろな概念の集まった複雑な考え方だけど、「対象物を操作する」という日常生活で慣れ親しんだ概念を下敷きにしているから比較的習得しやすい。
595:デフォルトの名無しさん
22/04/07 19:53:12.89 +6isarPd.net
>>591
同意です。
が、私が強調したい部分は、言語仕様が簡略な分、必要最低限の複雑性が代わりに言語以外のところに現れることです。
CPUレジスタの固有機能や命令セットの違いとかもまさにその通りで、言語自体の概念ではないが、目的の用途に取り組む場合に必要なる知識だったします。
RustとGoを学習する場合も勿論、言語を構成する概念だけ、一通り目を通せば終わり、というわけではないですよね?
596:デフォルトの名無しさん
22/04/07 19:53:35.29 48p+VEp6.net
雑魚ウェブプログラマーの俺からするとRustはGoに比べて言語機能がリッチでいいんだが、まだライブラリ(Rustではクレート)が十分に揃ってないように感じるのと、クレートがすごい細かい単位で分割されてるからたくさんクレートを組み合わせて使わないといけないのが難点かな
個人的には早くまともなORMを出してほしい。1番使われてるであろうORMのDieselが非同期に対応してないのは辛いw
597:デフォルトの名無しさん
22/04/07 20:33:59.30 hOTZf/Ps.net
>>593
そうあせるな。JavaだってまともなO/Rマッパーが追加されるまで10年くらいかかってる。
Java
- 1996年 Java 1.0
- 1999年 JavaEE
- 2006年 JavaEEにJPA(O/Rマッパー)追加
Rust
- 2015年 Rust1.0
598:デフォルトの名無しさん
22/04/07 20:39:59.88 zb08jYei.net
>>592
そこは>>584で述べた通り、Rustは
「もろもろの概念をほとんど全部使わないとまともなプログラムができない」
というのが学習する上で凶悪な障壁になっている。
例えばPythonなら基本的なメソッド呼び出しから段階的にプログラムを作りながら学習していけるけど、
Rustは関数ひとつ呼び出すにも所有権、スコープ、ライフタイム(RAII)、moveセマンティック、参照・借用あたりの概念を習得しないとそもそもプログラムが作れない。
自動車のマニュアルをいきなり習うようなもので、そりゃ挫折する人間も増えるかと。
まずはオートマで運転に慣れてから限定解除したほうが習得しやすいよね。
599:デフォルトの名無しさん
22/04/07 20:43:09.58 eYC8sBa3.net
25年前からの10年と7年前からの10年を同じく扱いにするなよ。
600:デフォルトの名無しさん
22/04/07 21:06:58.62 /n3eSctb.net
>>587
お前、ホームドアがなかった頃にホームから落ちたことあるか?
俺はないよ。
大都会では用水路に蓋がなく、偶に人が落ちて死んでる。
それらがほぼ暗渠になってるトン菌民とかからすると非難囂々だが、
住んでる連中は蓋がない事に慣れてるし、落ちる事もほぼないので、今後も蓋がされる気配はない。
同様な事はホームドアにも言える。
実際、ホームドアがなかった頃、困った奴はどれくらい居る?
俺は落ちた事も、落ちそうになった事もない。
ホームの端は歩かないというのが鉄則で、
混雑してる場合は何かの拍子で押されて一歩よろめいても問題ない程度の余裕を持って歩く、
それが出来ないなら諦めて人混みの流れに乗る、としてきたからだ。
これは電車通勤してる奴はみんなそうしてるし、実際に殆どの奴は落ちた事がないはず。
落ちるような奴は、そもそも保険も注意も足りてないだけ。
ガードレールがあり、歩道と車道が完全に分離してる道と、そうでない道、どの経路を通るかの選択も同じ。
車が通らない道が一番安全で、次にガードレール付きの歩道がある道、そうじゃない道の順なのは誰でも分かる。
なら、安全な道を選択すれば事故の確率は減らせる。
同じなんだよ。危険性があると分かっているのなら、上位での回避努力は出来る。
それがホームドアがなくても殆どの人が落ちた事がない理由だ。
上位での回避努力をして、さらにチェッカーが付いていれば、さらに事故を減らせる。
しかしRustは、上位の努力をせずにゴリゴリチェッカーだけで安全を確保しようとしてる。
それは俺は違うと思うし、今まで落ちた事もないから、俺にはRust流ホームドアも要らんよ、としか思わない。
(なおホームドア自体は視覚障害者や児童の為に有った方がいいが)
Rustの連中が言ってる安全性は、C/C++で特に困ってない連中には何の魅力もない。
その安全性は多分開発速度の向上に寄与するはずだが、Rustで早くなったって話もないでしょ。
601:デフォルトの名無しさん
22/04/07 21:32
602::17.79 ID:6pGOygc2.net
603:デフォルトの名無しさん
22/04/07 21:32:21.20 +6isarPd.net
>>595
実際は概念一つ一つを念入りに調査せずに、初心者の内はとりあえず思ったまま書いて、
コンパイラに渡してエラーになったら修正するのが普通かと思いますね。
たぶん、人によっては間違ったコードがCIとかでエラーになることを恥と思う気持ちもあるが、些細な問題です。
私もよく、失敗したくないときは、ローカルでコンパイルしてからプッシュするようにしています。
そこは基本的に気持ちの問題ですよね。
604:デフォルトの名無しさん
22/04/07 21:35:29.56 ikFGu1Ah.net
じゃあ動的型付け言語でも問題ないな
自分で気を付ければいいだけなんだから
605:デフォルトの名無しさん
22/04/07 21:38:19.51 +6isarPd.net
>>595
たとえばの話、多くの初心者は再帰関数を使って、スタックオーバーフローを起こして初めて、スタックというものを意識をするわけですが、
それまでは、スタックという概念をまったく気にせずにプログラムを作っていたことも、よくありますよね?
Rustの所有権周りの概念のうち、どれだけこのスタックのアナロジーに当てはまるかは多分人それぞれですが、
少なくとも、所有権の概念を細分化してできた概念の数が、そのまま敷居の高さになることはないと思います。
606:デフォルトの名無しさん
22/04/07 21:41:34.29 bwKax5i+.net
>>597
GAFAMのような大企業はホームから突き落とされるリスクが現実的だからホームドアを必要とするんだよ
ただお前さんのプログラムは攻撃者に狙われるほど広く使われていないというだけ
もちろんそういうマイナーなプログラムに安全性は不要というならそれは自由だけど
607:デフォルトの名無しさん
22/04/07 21:46:07.49 bwKax5i+.net
あと酔っ払ってホームから転落する大人もいるってのもあるな
つまり一流のプログラマでも絶対にミスをしないということはないから機械的にチェックしたいという話
608:デフォルトの名無しさん
22/04/07 21:59:21.50 /n3eSctb.net
>>600
実際俺はJSで特に苦労もしてない。
Rustの信者連中が間違ってるのは、Rust公式勝手訳日本語版まえがき(前スレ990)にある、
> やっかいな落とし穴を回避する術
を学ぼうともしてない事なんだよ。
これを学んでからRustを使えば確かに二重チェックになって意味はあるが、
学ばずに済ませようとするのは間違いだよ。
(とはいえ結果は君らが負うのだから好きにすればいいが)
ホームドアがない時には、端を歩かない、走ったりもしない、というのは鉄則だった。
ホームドアがあるから、走ったりしても安全!というのは明確な間違いだよ。
そんな事をしてる限り、危険予知能力なんて絶対に身に付かないから、
Rust以外の言語だとまともにプログラミング出来なくなるとも思う。
(それも含めて選ぶのもまた自由だけど)
>>602
GAFAM連中は「やっかいな落とし穴を回避する術」を知ってる上でやってるから二重チェックになってて意味がある。
ここのRust信者はこれを知らずに「Rustを使いさえすれば安全!バグ無し!」とか、
一時のHaskell連中と同じ事を言いだしてるから、ただのカルトであり、意味がない。
ただそれはさておき、コンパイラのチェックが厳しければ生産性が向上するはずなのだが、
実際聞いた事ないだろ?
実際には二重チェックとしてしか使われておらず、なければないで済む範囲での使用に留まっているから、
生産性の向上分が見えてこないだけ。
本当にRustじゃないと無理だっていうものがあれば、キラーアプリとしてそれが出てくる。
ないんだから、そういう事。
609:デフォルトの名無しさん
22/04/07 22:07:07.36 gzjYIF1u.net
>>604
やっかいな落とし穴が何に該当するかよくわからないのだけどrustやるならC++での危険回避法を熟知し
610:ておけということ?
611:デフォルトの名無しさん
22/04/07 22:09:45.98 zb08jYei.net
>>599
> 実際は概念一つ一つを念入りに調査せずに、初心者の内はとりあえず思ったまま書いて、
> コンパイラに渡してエラーになったら修正するのが普通かと思いますね。
Rustの場合、初心者がまともに動くプログラムに到達するまでいくつも修正しなきゃいけないのが問題だっつうの。
エンストしまくってたらマニュアル運転の練習もクソも無いわな。
>>601
> たとえばの話、多くの初心者は再帰関数を使って、スタックオーバーフローを起こして初めて、
> スタックというものを意識をするわけですが、
ここからすでに前提が間違っている。
Pythonとかは再帰関数を使用しなくてもプログラムを実装できるけど、
Rustは所有権を使用しなけりゃ変数定義も関数呼び出しもできない。
> 少なくとも、所有権の概念を細分化してできた概念の数が、そのまま敷居の高さになることはないと思います。
ここも間違っている。
細分化して段階的に学習できればまだマシな方で、Rustの場合は所有権の概念をほぼ丸呑みしないとプログラムできない。
クラッチとギアとハンドルを同時に操作しないとマニュアル車を前に進めることもできないようなもんだ。
612:デフォルトの名無しさん
22/04/07 22:32:09.52 /n3eSctb.net
>>605
いやC++に限らず、プログラミング全般で、
そこに危険があれば、どうやったら上位で回避出来るかは、術がある。
これまで何とかやってきてるんだから当たり前だろ。
面倒だから一々言う気もないけど、「データ競合」については前スレで既に書いたとおり、
・メインスレッド+サブスレッドでディスパッチ前に全部解決
で完全に回避出来る。
この構成を採用しているのがC#のGUIで、
どうもお前らは言語に対してのこだわりが過ぎてて、これがC#を褒めてるように聞こえるらしいが、
どの言語であってもこの構成にすれば回避可能で、C#のGUIではそれをフレームワークとして強制してるだけ。
だからC#では、フレームワークを正しく使う気があれば、「術を知らなくても」自然と回避できることになる。
他言語なら、この知識があれば、同様に自前で回避出来るだけ。
Rustの場合はこれをコンパイラのチェックにより同様に「術を知らなくても」回避出来るようにしている。(回避術は異なるが)
その他諸々突っ込んで、「コンパイルが通りさえすればOK」を目指すのも一つの手で、実際そうしてるようだが、
本来それはあくまで「Rustではどういう術を強制する事によって、どの問題を回避している」と認識出来てからやるべき問題。
それを初心者のうちはある程度すっ飛ばしても構わないとは思うが、知らずに済ませるのはどうかと思うよ。
566の(2)のつもりなら特に。
実際にRustが採用している術は、C++でのRAIIとunique_ptrに近いから、
これらを既に常用してたら、グダグダ言われずともRustに移行するだろうよ。
ただ、回避する術は一つじゃないから、違う術を使ってる連中は、Rustを使う事はないだろう。(俺はこちら)
そして本来は、どんな術があるのかを学ぶのが学習で、
元々はデザインパターンもこの方向だったはずだが、何かおかしな事になっちゃって見捨てられた感じになってるが。
613:デフォルトの名無しさん
22/04/07 22:40:48.67 eUNchQrd.net
Rust自体は好きだけどPythonの代替先になるというのは現状個人的には全く考えられないなぁ
単一所有権ベースの書き方が、意識せずとも間違いなく書ける内容なら静的チェックがなくても取り沙汰されないし、それがメリットとしても喧伝されないと思うんだよな
別分野だけど機械学習系だと公式のラッパー先としてまず出てこない言語だし、やっぱ性能とは別の事に頭使いたいジャンルだと不向きだと思うよ
もし広い範囲でPythonの代替になると思ってる人が居るんだとしたら、普段のスクリプティングとかもRustで書いてんのかな
614:デフォルトの名無しさん
22/04/07 22:41:15.91 QfJTmIv3.net
ようしわかった
もうわかった
ついにわかった
言ってほしいんだろ?
そういうことだろ?
Rustはしょうもないクソ言語で未来はないし
GAFAMが使ってるのもそれはそいつらがアホだからだ
ね、これでこの話おしまい
こんなクソ言語だれも使わなくていいからね
心配しなくていいからね
こんなクソ言語消えて�
615:ネくなるから 誰も使わないからね 俺は使うけど
616:デフォルトの名無しさん
22/04/07 22:43:27.27 YR3mJewM.net
いや駄目だ俺が使う
617:デフォルトの名無しさん
22/04/07 23:00:34.39 /n3eSctb.net
>>608
> 単一所有権ベースの書き方
これが演算には絶望的に不向き。ウザイだけ。
ただし鯖等では確かに「上から下に流れる」ように書くので、「単一所有権ベース」でも多分問題なく書ける。
だからまあ、現時点でWeb限定に近いのは、既に住分けてる、とも言える。
他のアプリでも、自前で状態管理するのを極力止めて、内部でRESTfulにすれば、そこそこ行けるはず。
618:デフォルトの名無しさん
22/04/07 23:24:34.67 hOTZf/Ps.net
>>610
ついやいや俺が
619:デフォルトの名無しさん
22/04/07 23:38:47.04 +6isarPd.net
>>606
言いたいことは分かります。
要は学習成果の可視化しにくいインターバルが長いと不利ということですよね?
学習した先に何を求めるかは人それぞれですし、
それって結局、言語機能を部分的にでも成果として、学習者が捉えられるかどうかだけの問題じゃないんですか?
(Rustの所有権を部分的にできるかは平行線なので置いておいて)
案外若い世代はところどころデジタルリテラシーがあるので、
プログラミング学習ができないと危惧して、変にレール敷くような考え方はしなくても良いんじゃないですか?
620:デフォルトの名無しさん
22/04/07 23:51:03.44 eYC8sBa3.net
1ヶ月に一度1ー2時間ほどプログラミングします
といった程度の人達が、あやふやな知識のまま
目的の動くもの素早く作れる言語でないと
広い裾野には訴求しない
ニッチな人のニーズには合致する可能性はあるけど
621:デフォルトの名無しさん
22/04/08 00:23:55.25 PcnkB3on.net
>>607
要はライブラリなど自分が依存するものの中身がどうなっているかはちゃんと把握した上で使えって話と、
自分が困ってないなら無理に道具を変える必要がないって話ね
rustというよりrustを変に持ち上げてる人に対するコメントだった訳ね
622:デフォルトの名無しさん
22/04/08 00:24:56.07 nM4swqos.net
我々の生きているうちにもしそんな素晴らしい汎用言語が出来ると夢が広がりますよね。
未来の言語研究に期待しましょう。
623:デフォルトの名無しさん
22/04/08 00:26:25.71 PcnkB3on.net
>>614
たしかに、次世代言語なんて銘打ったスレに集まるような人向けの言語なんてニッチの最たるものだろうね
624:デフォルトの名無しさん
22/04/08 00:31:27.96 TpfOdACd.net
>>613
>学習した先に何を求めるかは人それぞれですし、
なら、なおさらPythonの代替をRustに求めるのは無理。
まさしく>>608の通り、学習した先に「やっぱ性能とは別の事に頭使いたい」というならRustは不要だわな。
>>609
いやいや、自分もRustは認めているよ? Forthと同じぐらいには。
625:デフォルトの名無しさん
22/04/08 00:47:01.39 nM4swqos.net
>>618
そうですね。別に性能だけの話じゃないと思うが、
いろいろ気にしない人には確かにPythonでプログラミングを勧めるのも一つの手だと思いますね。
626:デフォルトの名無しさん
22/04/08 01:01:29.96 8ljQsUz4.net
Rustに移行するのはC++から来る人が多いだろうな
ptyhon、java,typescript、スクリプト系からは少ないだろう
627:デフォルトの名無しさん
22/04/08 03:06:12.85 Km060/QD.net
>>597
長々と書いてるけど、お前って一人で開発してんの?
なら好きなの使えばいーじゃん。
628:デフォルトの名無しさん
22/04/08 06:34:32.60 z2O+b+J1.net
>>608
Pythonなんて超遅いダメ言語だろ
C/C++に移行すれば10倍くらい速くなるぞ
メモリ使用量も大きく減る
629:デフォルトの名無しさん
22/04/08 07:08:41.73 F6GdhFTs.net
>>622
用途が違うものを比較しても意味ないよ
630:デフォルトの名無しさん
22/04/08 07:36:43.85 5MIkz0s/.net
>>620
JavaScript(
631:Node.js)からRustへ来たけど特に難しいところは無かったよ JavaScriptでPromise返す並行プログラミングしていたから RustでFuture返す並行プログラミングにすぐ移行できた
632:デフォルトの名無しさん
22/04/08 07:50:10.89 aDtoFpcQ.net
RubyやPHPからRustに来る人はゼロではないだろうけど少ないだろ
それぐらいなぜ認めたくないのか?
用途が違う
633:デフォルトの名無しさん
22/04/08 07:51:28.36 3RXqham9.net
みんな色々と考えるんたな。
自分の使う言語を選んで仕事始める人が多いのか?
634:デフォルトの名無しさん
22/04/08 07:54:38.16 atDB72kn.net
>>625
RubyからRustへも多いよ
例えばこのスレでも>>510へのレス状況から少なくとも3名は居る
635:デフォルトの名無しさん
22/04/08 08:00:35.35 aDtoFpcQ.net
病気なのか?
636:デフォルトの名無しさん
22/04/08 08:08:54.70 jLbA7OdY.net
俺がスクリプト言語からRustも使うようになった理由はスクリプト言語っぽく書けて便利で速いから
今後もそういう人が増えるのは間違いない
637:デフォルトの名無しさん
22/04/08 08:15:42.34 CQiu8f2R.net
>>629
完全に同意
638:デフォルトの名無しさん
22/04/08 08:22:48.61 G9TYKjMP.net
ぼくも(^o^)
639:デフォルトの名無しさん
22/04/08 08:38:19.52 16DK1NKj.net
>>626
逆よ
仕事を選ぶと言語が決まることがほとんど
640:デフォルトの名無しさん
22/04/08 09:31:00.03 gFm4wviN.net
>>629
設定に無理があるwテキトーなパースするだけにrustなんか絶対に使わねーよ。
641:デフォルトの名無しさん
22/04/08 09:55:16.26 ncPbKyCt.net
>>633
自分もRustを使っているけどRustで特に困っていることないぜ
642:デフォルトの名無しさん
22/04/08 11:02:37.27 wv8X5M3X.net
>>634
そらRustしか知らなきゃそうなるよ
もっと勉強した方がいいよ
643:デフォルトの名無しさん
22/04/08 11:18:15.72 J3x148PI.net
C/C++/Python/Java/Scala/Goあたりは仕事で書いてたけど今はRustメインだな
他にどの言語を学べばRust使う気がなくなるの?
644:デフォルトの名無しさん
22/04/08 11:29:00.59 CQiu8f2R.net
なんだこのビッグウェーブはw
Rustってとてつもない一大ムーブメントなのか?w
645:デフォルトの名無しさん
22/04/08 11:59:33.01 xydoIMfT.net
>>635
スクリプト言語とRustしか使っていないのですが何を勉強するとよいですか?
速さが必要なものと大きなものはRustを使っています。
646:デフォルトの名無しさん
22/04/08 12:29:19.18 lZxU7PE0.net
>>636
FORTHおすすめ。
647:デフォルトの名無しさん
22/04/08 12:33:53.85 gfZaFbSj.net
テキトーにパースするでもserdeが楽だから使うわ
648:デフォルトの名無しさん
22/04/08 12:50:21.80 uV0lTSE5.net
FORTHやるくらいならLISPやる
649:デフォルトの名無しさん
22/04/08 13:30:54.85 LwBnqH/T.net
Ruby 界隈では、mruby の本が出た。Ubuntu 18.04, C99 対応。
Webで使えるmrubyシステムプログラミング入門、近藤宇智朗、2020/11
Elixir の本も出た。
Ruby on Rails の本を書いている、黒田努の本
Rust は、Rubyと同様の式ベース言語で、Elixirと同様のパターンマッチ
ただ、YouTube で有名な、雑食系エンジニア・KENTA が、
バックエンドのキャリアパスは、Rails → Go のみと断言している!
Elixir, Rustは普及のキャズムを超えなかったから
650:デフォルトの名無しさん
22/04/08 13:52:24.78 VBKiPB4k.net
Goで出来ていることがRustでも容易に出来るようになったことが大きい
そしてRustの方が高速かつ適用範囲も広い
651:デフォルトの名無しさん
22/04/08 13:58:37.76 ueuwLW+z.net
>>615
違うぞ。
つか話が通じないのは全然立ち位置が違うからだが、ここを詰める意味はないので終わりにしたいのだが。
> 自分が依存するものの中身がどうなっているかはちゃんと把握した上で使え
理想的にはそうだが、現実的には無理だし、やる意味もない。
例えば数学関数、sin(x)とかも様々な実装方法はあるが、十分な速度と精度が出れば何でもよく、
sin(x)自体を導出する数学の知識(級数展開)なんて必要ないだろ。
ライブラリにしてもフレームワークにしても、基本的には外面仕様まで抑えればよく、内部まで知る必要はないんだよ。
実際、鯖やJSを書いてる奴等も、ブラウザの実装なんて知る必要ないし、知らないだろ。
ただしそれらの優劣を問う場合、内部実装まで掘り下げないと比較にならないだろ。
「データ競合」について言えば、C#とRustのアプローチは明確に異なるわけだが、
この「異なる」という事を認識し、それぞれの利点と欠点を把握してないと、正しい比較にはならないだろ。
Rust信者は「Rustにすれば僕がどんなに馬鹿でも無知でも全て解決してくれる」と思っているようだが、
これだと比較検討する技術レベルには達してないんだよ。
ただ、「データ競合」については確かにRustにお任せでも回避出来るのだろうし、これ自体が悪い方法でもない。
(一つか、下手すると一つも方法を知らない癖に何故比較検討出来てるつもりなのか?という話)
> 自分が困ってないなら無理に道具を変える必要がない
これも違ってて、だいたい人は困ってる事を認識出来てないものなんだよ。
携帯が無い時代に携帯が無くて困ってた奴は居なかったし、
スマホが無い時代にスマホが無くて困ってた奴も居なかったし、
Rustが無い時代にRustが無くて困ってた奴も居なかった。
だから新しい物を持ってくる場合、「実はあなたはここに困っていたのですが、気づけていません。
Rustを使えばこう出来ます。一度使えば二度と戻れませんよ」と具体例を示さねばならないのだが、
これがないだろ、という話だよ。(納得する物が有れば単に乗り換えれば済むだけ)
652:デフォルトの名無しさん
22/04/08 13:59:03.07 ueuwLW+z.net
RustはC++の特定のスタイルを強制してそれ以外をコンパイルエラーにするように出来てる。
だからそのスタイルを使いたい奴には超フィットするけど、
そうじゃない奴には使えない。(コンパイルエラーになるだけ)
だからやっぱりこの「エラー」ってのは強すぎてて、
> C++での危険回避法を熟知しておけ
これもちょっと違ってくる。
「Rustが採用している『術』」での危険回避をしたいのなら、
それ以外をエラーにしてくれるRustが最適で、同じ事をわざわざC++でやっても抜けを許容される分だけゴミ。
ただ問題は、Rustの場合はそれ以外を許容しないから、いつまで経っても「Rustが採用した『術』」以外の方法を学ぶ事が出来ない。
だって試そうとしてもエラーになるのだから。
だから「Rustが採用している『術』」が間違っていたら(不適切だったら)その時点で終わってしまう。
だからこそ、無駄にカルト化する。言語と心中する事しか許容しないので。
本来は、「Rustが採用した『術』」と「他の方法」を知ってて、長短見極めた上で、
Rustでの採否に納得した奴がRustを使うべきなのだが、
君らは「他の方法」を知らずに「Rustが採用した『術』」をマンセーしてるだけでしょ。それはカルトだよ。
ただし「Rustが採用した『術』」はそんなに悪いものでもないし、
コーディング戦略は大きい単位で適用した方が効率がいいのも事実。
最大単位は「言語」なので、実験としてはいいし、
Rustが無くともC++で同じ事をやってた連中にとっては天国だろう。
だからやたらマンセーしたがる奴が居てもおかしくない。
(ただし実は最上位の「プログラミング全般」という単位があり、
例えば「用意した変数はそれ以降で自由に使える」とかだが、Rustはこれに反しているので混乱も来す事となっている)
653:デフォルトの名無しさん
22/04/08 13:59:38.12 ueuwLW+z.net
長期的展望については、構成上、Rustは(育成含めての)独立したエコシステムを持ててない事がかなりポイントになる。
これはやはりホームドアが分かりやすいと思うが、これがなかった頃、まともな大人は、
・ホームの端は歩かない
・ホーム上では走ったりしない
・ふらつく程は飲まない
等を遵守して、ホームからの転落事故はほぼ0に出来てた。
Rustはこれにホームドアをさらに設
654:置し、物理的に転落しないようにした。 結果、「大人の常識の遵守」「ホームドア」で二重のセキュリティになり、安心感は増してる。 とはいえ、ほぼ精神的なものであり、実際は無くても転落する奴はほぼ居なかったので、実質的意味はほぼ無い。 これが、キラーアプリが存在出来てない理由。(GAFAMはこの使い方) さてここで、「俺はホームドアがない駅なんて知らねえ。老害の常識なんて糞食らえ」というゆとりがいて、 ただの10分間の休み時間でもドッチボールをしようとしてた小学生時代と同様、 駅で10分待つ間にも鬼ごっこ等で遊ぼうとしたとする。 一般社会では「これだからゆとりは」となって袋だたきなのは確実だが、プログラミング界隈では違う。 ・端を歩ける→デッドスペースだった両端の1mを活用出来、輸送能力が10-20%程増す ・走らない縛り無し→ならホームの両端はスカッシュコートに出来るじゃん! ・へべれけでも大丈夫→なら通勤電車内にバーを設置し、1時間飲んでたら家に着いてるとか出来るじゃん! 等、利便性を提供出来れば良しとされる。 俺が「Rustによって新たに提供される価値とは何か?」とさんざん聞いてたのはこれなんだよ。 Rust流のホームドアが無かった頃は事実上無理だった事も何か出来るようになってるはず。 その活用事例は何か、なんだよ。
655:デフォルトの名無しさん
22/04/08 14:00:07.89 ueuwLW+z.net
ただしこれは両刃の剣で、ホームドアがある前提で、それ以前の「大人の常識」を「所詮は老害の戯言」と切り捨てると、
ホームドアがない駅では確実に事故りまくる。今のRustがこれで、既に書いたが、
・「Rustが採用した『術』」以外はエラーにする=Rustではそれ以前の「大人の常識」を試せないし、学べない
んだよ。だから、構成として
・既に大人の常識がある人が、さらにホームドアが設置された駅を使う(GAFAM)
用に出来てて、
・全く何も知らない幼児が、怪我をしながらも危険を学び、次第に大人になっていく(Rust信者)
用には出来てない。(つまりRustだけではプログラマを成長させる事は出来ない)
とはいえ、現実の今時の公園ではブランコすら撤去されてる始末で、
安全重視の、スリルの欠片もなく面白みもない遊具だけになってしまってるが、
ではこれが間違ってるかと言われれば、
昭和時代のヤベー遊具は確かに楽しかったが、でも確かに危なかったし、なんだかなあ、ではある。
つまり、自前での育成(≒プログラマによる試行錯誤)を放棄している点に置いて、Rustが目指している所は、
・Rust専用コーディングドカタ育成
・他言語で育成されたプログラマの取り込み
であって、Rustではプログラミングの世界を成長させる事は出来ないし、プログラマの自主的な成長も促せない。
Rustが出来るのは、やり方を画一的に固定した開発だけだ。
ただこれが悪いわけでもない。実際、フレームワークは同様だし。
だからまあ、立ち位置としては「言語」よりも「フレームワーク」と考えるべきなのだろう。
そうすれば、「Rustに合ってる状況ならRust使え」で、みんな非常に納得出来るだろうし。
ポリシーに合致してないコードを拒絶する点に於いても、フレームワークと同様だし。
(C#の場合にデタラメなコードを食わせてイキってる馬鹿もこのスレには居たが、
この点Rustならエラーなのでフレームワークとしても正しい)
656:デフォルトの名無しさん
22/04/08 14:05:58.17 xmDi13Bx.net
Rustのプログラミングの快適さは
様々なプログラミングパラダイムを巧みに洗練して採り入れているところにあると思う
一つ一つは既存の言語にあるものが多いけど総合的に組み合わされたのはRust特有でそれが�
657:Rーディングのしやすさに繋がっている
658:デフォルトの名無しさん
22/04/08 14:45:33.12 wv8X5M3X.net
昼間から長文とかおじちゃんたち仕事は??
659:デフォルトの名無しさん
22/04/08 14:49:38.98 J+DLQw6K.net
「Javaスクールの危険」みたいな話になってきてるな
URLリンク(web.archive.org)URLリンク(local.joelonsoftware.com)
660:デフォルトの名無しさん
22/04/08 14:54:51.52 zi4mesOO.net
一方でRustは色んなことが身につくからその問題点もないよな
661:デフォルトの名無しさん
22/04/08 14:56:47.94 CQiu8f2R.net
>>650
再起とポインタなんて知らなくてもWebプログラマーはつとまるんだよ
ましてや精神的態度なんて根性論いいだしたら人材不足の今、人なんて集められないよ
662:デフォルトの名無しさん
22/04/08 14:58:59.00 CQiu8f2R.net
>>650は下の(2)の人のことをいってるんであってこのスレにいる大多数の(1)の人たちには関係がないこと。
ーーーーーーー
プログラマーには2種類の人がいる。
自動車産業に例えたら、(1)地方の工場勤務の期間工と(2)研究開発センターのエンジニア
(1)はRustは使用しなくていい。というか理解できなくて使えない。Pythonとかで頭を使わないコード書くだけだから。例えるなら、ラインで組み立て作業を1日延々しているだけのルーチンワーク要員。
(2)はRustなどを使用してシステムプロラミングWebassemblyなどでローレイヤーや基盤を作っていく。例えるなら自動車のエンジンやデザインの設計者。
663:デフォルトの名無しさん
22/04/08 15:07:49.60 Js+ybEIJ.net
自分はCS出てフルスタックやってるから他の立場のことはわからないが
色々やってきた言語の中でRustが最も開発効率良いと断言できる
664:デフォルトの名無しさん
22/04/08 15:13:55.24 FJuOSvU4.net
rustとgoが合体したらいいのになあ
665:デフォルトの名無しさん
22/04/08 15:30:55.82 fiUiUlD4.net
なんか一部のrust推しがすごいっすね
666:デフォルトの名無しさん
22/04/08 16:23:35.95 UBiXicJa.net
>>655
V言語
667:デフォルトの名無しさん
22/04/08 16:57:15.66 PcnkB3on.net
>>656
rust推しだけど変な人が無理筋の推し方してて困ってる
668:デフォルトの名無しさん
22/04/08 17:09:14.19 a6HBTm5x.net
頭の悪い子に限って延々演説するよなw
お前らそれを完全スルーしてて賢いわw
669:デフォルトの名無しさん
22/04/08 17:14:34.86 BG4ZrdKI.net
>>657
Vは確かに最初の宣伝はそんな感じだっけど、現状はRustとGoを足して10で割ったくらいの状態だからなぁ
670:デフォルトの名無しさん
22/04/08 17:54:29.26 0JDStoXf.net
V言語はマクロがないとかクロージャがないとか
あと安定しないままだよね
671:デフォルトの名無しさん
22/04/08 18:14:16.72 CQiu8f2R.net
>>659
スルーというかNGWordに正規表現で
.{50}
としてるからまったく気づかない
672:デフォルトの名無しさん
22/04/08 18:59:02.09 wv8X5M3X.net
>>652
そうして集めたPHPerたちが作ったWebシステムはどうなりましたか
673:デフォルトの名無しさん
22/04/08 19:35:51.32 gFm4wviN.net
>>663
facebookって言って超メジャーなサービスになってるよ。