- 1 名前:デフォルトの名無しさん [2022/03/22(火) 03:23:41.60 ID:ZDHdo9X7.net]
- スレタイ以外の言語もok
前スレ 次世代言語23 Go Nim Rust Swift Kotlin TypeScript https://mevius.5ch.net/test/read.cgi/tech/1638086359/
- 635 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 08:00:35.35 ID:aDtoFpcQ.net]
- 病気なのか?
- 636 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 08:08:54.70 ID:jLbA7OdY.net]
- 俺がスクリプト言語からRustも使うようになった理由はスクリプト言語っぽく書けて便利で速いから
今後もそういう人が増えるのは間違いない
- 637 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 08:15:42.34 ID:CQiu8f2R.net]
- >>629
完全に同意
- 638 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 08:22:48.61 ID:G9TYKjMP.net]
- ぼくも(^o^)
- 639 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 08:38:19.52 ID:16DK1NKj.net]
- >>626
逆よ 仕事を選ぶと言語が決まることがほとんど
- 640 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 09:31:00.03 ID:gFm4wviN.net]
- >>629
設定に無理があるwテキトーなパースするだけにrustなんか絶対に使わねーよ。
- 641 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 09:55:16.26 ID:ncPbKyCt.net]
- >>633
自分もRustを使っているけどRustで特に困っていることないぜ
- 642 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 11:02:37.27 ID:wv8X5M3X.net]
- >>634
そらRustしか知らなきゃそうなるよ もっと勉強した方がいいよ
- 643 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 11:18:15.72 ID:J3x148PI.net]
- C/C++/Python/Java/Scala/Goあたりは仕事で書いてたけど今はRustメインだな
他にどの言語を学べばRust使う気がなくなるの?
- 644 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 11:29:00.59 ID:CQiu8f2R.net]
- なんだこのビッグウェーブはw
Rustってとてつもない一大ムーブメントなのか?w
- 645 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 11:59:33.01 ID:xydoIMfT.net]
- >>635
スクリプト言語とRustしか使っていないのですが何を勉強するとよいですか? 速さが必要なものと大きなものはRustを使っています。
- 646 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 12:29:19.18 ID:lZxU7PE0.net]
- >>636
FORTHおすすめ。
- 647 名前:デフォルトの名無しさん [2022/04/08(金) 12:33:53.85 ID:gfZaFbSj.net]
- テキトーにパースするでもserdeが楽だから使うわ
- 648 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 12:50:21.80 ID:uV0lTSE5.net]
- FORTHやるくらいならLISPやる
- 649 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 13:30:54.85 ID: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 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 13:52:24.78 ID:VBKiPB4k.net]
- Goで出来ていることがRustでも容易に出来るようになったことが大きい
そしてRustの方が高速かつ適用範囲も広い
- 651 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 13:58:37.76 ID:ueuwLW+z.net]
- >>615
違うぞ。 つか話が通じないのは全然立ち位置が違うからだが、ここを詰める意味はないので終わりにしたいのだが。 > 自分が依存するものの中身がどうなっているかはちゃんと把握した上で使え 理想的にはそうだが、現実的には無理だし、やる意味もない。 例えば数学関数、sin(x)とかも様々な実装方法はあるが、十分な速度と精度が出れば何でもよく、 sin(x)自体を導出する数学の知識(級数展開)なんて必要ないだろ。 ライブラリにしてもフレームワークにしても、基本的には外面仕様まで抑えればよく、内部まで知る必要はないんだよ。 実際、鯖やJSを書いてる奴等も、ブラウザの実装なんて知る必要ないし、知らないだろ。 ただしそれらの優劣を問う場合、内部実装まで掘り下げないと比較にならないだろ。 「データ競合」について言えば、C#とRustのアプローチは明確に異なるわけだが、 この「異なる」という事を認識し、それぞれの利点と欠点を把握してないと、正しい比較にはならないだろ。 Rust信者は「Rustにすれば僕がどんなに馬鹿でも無知でも全て解決してくれる」と思っているようだが、 これだと比較検討する技術レベルには達してないんだよ。 ただ、「データ競合」については確かにRustにお任せでも回避出来るのだろうし、これ自体が悪い方法でもない。 (一つか、下手すると一つも方法を知らない癖に何故比較検討出来てるつもりなのか?という話) > 自分が困ってないなら無理に道具を変える必要がない これも違ってて、だいたい人は困ってる事を認識出来てないものなんだよ。 携帯が無い時代に携帯が無くて困ってた奴は居なかったし、 スマホが無い時代にスマホが無くて困ってた奴も居なかったし、 Rustが無い時代にRustが無くて困ってた奴も居なかった。 だから新しい物を持ってくる場合、「実はあなたはここに困っていたのですが、気づけていません。 Rustを使えばこう出来ます。一度使えば二度と戻れませんよ」と具体例を示さねばならないのだが、 これがないだろ、という話だよ。(納得する物が有れば単に乗り換えれば済むだけ)
- 652 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 13:59:03.07 ID:ueuwLW+z.net]
- RustはC++の特定のスタイルを強制してそれ以外をコンパイルエラーにするように出来てる。
だからそのスタイルを使いたい奴には超フィットするけど、 そうじゃない奴には使えない。(コンパイルエラーになるだけ) だからやっぱりこの「エラー」ってのは強すぎてて、 > C++での危険回避法を熟知しておけ これもちょっと違ってくる。 「Rustが採用している『術』」での危険回避をしたいのなら、 それ以外をエラーにしてくれるRustが最適で、同じ事をわざわざC++でやっても抜けを許容される分だけゴミ。 ただ問題は、Rustの場合はそれ以外を許容しないから、いつまで経っても「Rustが採用した『術』」以外の方法を学ぶ事が出来ない。 だって試そうとしてもエラーになるのだから。 だから「Rustが採用している『術』」が間違っていたら(不適切だったら)その時点で終わってしまう。 だからこそ、無駄にカルト化する。言語と心中する事しか許容しないので。 本来は、「Rustが採用した『術』」と「他の方法」を知ってて、長短見極めた上で、 Rustでの採否に納得した奴がRustを使うべきなのだが、 君らは「他の方法」を知らずに「Rustが採用した『術』」をマンセーしてるだけでしょ。それはカルトだよ。 ただし「Rustが採用した『術』」はそんなに悪いものでもないし、 コーディング戦略は大きい単位で適用した方が効率がいいのも事実。 最大単位は「言語」なので、実験としてはいいし、 Rustが無くともC++で同じ事をやってた連中にとっては天国だろう。 だからやたらマンセーしたがる奴が居てもおかしくない。 (ただし実は最上位の「プログラミング全般」という単位があり、 例えば「用意した変数はそれ以降で自由に使える」とかだが、Rustはこれに反しているので混乱も来す事となっている)
- 653 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 13:59:38.12 ID:ueuwLW+z.net]
- 長期的展望については、構成上、Rustは(育成含めての)独立したエコシステムを持ててない事がかなりポイントになる。
これはやはりホームドアが分かりやすいと思うが、これがなかった頃、まともな大人は、 ・ホームの端は歩かない ・ホーム上では走ったりしない ・ふらつく程は飲まない 等を遵守して、ホームからの転落事故はほぼ0に出来てた。 Rustはこれにホームドアをさらに設
- 654 名前:置し、物理的に転落しないようにした。
結果、「大人の常識の遵守」「ホームドア」で二重のセキュリティになり、安心感は増してる。 とはいえ、ほぼ精神的なものであり、実際は無くても転落する奴はほぼ居なかったので、実質的意味はほぼ無い。 これが、キラーアプリが存在出来てない理由。(GAFAMはこの使い方) さてここで、「俺はホームドアがない駅なんて知らねえ。老害の常識なんて糞食らえ」というゆとりがいて、 ただの10分間の休み時間でもドッチボールをしようとしてた小学生時代と同様、 駅で10分待つ間にも鬼ごっこ等で遊ぼうとしたとする。 一般社会では「これだからゆとりは」となって袋だたきなのは確実だが、プログラミング界隈では違う。 ・端を歩ける→デッドスペースだった両端の1mを活用出来、輸送能力が10-20%程増す ・走らない縛り無し→ならホームの両端はスカッシュコートに出来るじゃん! ・へべれけでも大丈夫→なら通勤電車内にバーを設置し、1時間飲んでたら家に着いてるとか出来るじゃん! 等、利便性を提供出来れば良しとされる。 俺が「Rustによって新たに提供される価値とは何か?」とさんざん聞いてたのはこれなんだよ。 Rust流のホームドアが無かった頃は事実上無理だった事も何か出来るようになってるはず。 その活用事例は何か、なんだよ。 [] - [ここ壊れてます]
- 655 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 14:00:07.89 ID:ueuwLW+z.net]
- ただしこれは両刃の剣で、ホームドアがある前提で、それ以前の「大人の常識」を「所詮は老害の戯言」と切り捨てると、
ホームドアがない駅では確実に事故りまくる。今のRustがこれで、既に書いたが、 ・「Rustが採用した『術』」以外はエラーにする=Rustではそれ以前の「大人の常識」を試せないし、学べない んだよ。だから、構成として ・既に大人の常識がある人が、さらにホームドアが設置された駅を使う(GAFAM) 用に出来てて、 ・全く何も知らない幼児が、怪我をしながらも危険を学び、次第に大人になっていく(Rust信者) 用には出来てない。(つまりRustだけではプログラマを成長させる事は出来ない) とはいえ、現実の今時の公園ではブランコすら撤去されてる始末で、 安全重視の、スリルの欠片もなく面白みもない遊具だけになってしまってるが、 ではこれが間違ってるかと言われれば、 昭和時代のヤベー遊具は確かに楽しかったが、でも確かに危なかったし、なんだかなあ、ではある。 つまり、自前での育成(≒プログラマによる試行錯誤)を放棄している点に置いて、Rustが目指している所は、 ・Rust専用コーディングドカタ育成 ・他言語で育成されたプログラマの取り込み であって、Rustではプログラミングの世界を成長させる事は出来ないし、プログラマの自主的な成長も促せない。 Rustが出来るのは、やり方を画一的に固定した開発だけだ。 ただこれが悪いわけでもない。実際、フレームワークは同様だし。 だからまあ、立ち位置としては「言語」よりも「フレームワーク」と考えるべきなのだろう。 そうすれば、「Rustに合ってる状況ならRust使え」で、みんな非常に納得出来るだろうし。 ポリシーに合致してないコードを拒絶する点に於いても、フレームワークと同様だし。 (C#の場合にデタラメなコードを食わせてイキってる馬鹿もこのスレには居たが、 この点Rustならエラーなのでフレームワークとしても正しい)
- 656 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 14:05:58.17 ID:xmDi13Bx.net]
- Rustのプログラミングの快適さは
様々なプログラミングパラダイムを巧みに洗練して採り入れているところにあると思う 一つ一つは既存の言語にあるものが多いけど総合的に組み合わされたのはRust特有でそれが
- 657 名前:Rーディングのしやすさに繋がっている []
- [ここ壊れてます]
- 658 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 14:45:33.12 ID:wv8X5M3X.net]
- 昼間から長文とかおじちゃんたち仕事は??
- 659 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 14:49:38.98 ID:J+DLQw6K.net]
- 「Javaスクールの危険」みたいな話になってきてるな
https://web.archive.org/web/20190226013343/local.joelonsoftware.com/mediawiki/index.php/Java%E3%82%B9%E3%82%AF%E3%83%BC%E3%83%AB%E3%81%AE%E5%8D%B1%E9%99%BA
- 660 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 14:54:51.52 ID:zi4mesOO.net]
- 一方でRustは色んなことが身につくからその問題点もないよな
- 661 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 14:56:47.94 ID:CQiu8f2R.net]
- >>650
再起とポインタなんて知らなくてもWebプログラマーはつとまるんだよ ましてや精神的態度なんて根性論いいだしたら人材不足の今、人なんて集められないよ
- 662 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 14:58:59.00 ID:CQiu8f2R.net]
- >>650は下の(2)の人のことをいってるんであってこのスレにいる大多数の(1)の人たちには関係がないこと。
ーーーーーーー プログラマーには2種類の人がいる。 自動車産業に例えたら、(1)地方の工場勤務の期間工と(2)研究開発センターのエンジニア (1)はRustは使用しなくていい。というか理解できなくて使えない。Pythonとかで頭を使わないコード書くだけだから。例えるなら、ラインで組み立て作業を1日延々しているだけのルーチンワーク要員。 (2)はRustなどを使用してシステムプロラミングWebassemblyなどでローレイヤーや基盤を作っていく。例えるなら自動車のエンジンやデザインの設計者。
- 663 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 15:07:49.60 ID:Js+ybEIJ.net]
- 自分はCS出てフルスタックやってるから他の立場のことはわからないが
色々やってきた言語の中でRustが最も開発効率良いと断言できる
- 664 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 15:13:55.24 ID:FJuOSvU4.net]
- rustとgoが合体したらいいのになあ
- 665 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 15:30:55.82 ID:fiUiUlD4.net]
- なんか一部のrust推しがすごいっすね
- 666 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 16:23:35.95 ID:UBiXicJa.net]
- >>655
V言語
- 667 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 16:57:15.66 ID:PcnkB3on.net]
- >>656
rust推しだけど変な人が無理筋の推し方してて困ってる
- 668 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 17:09:14.19 ID:a6HBTm5x.net]
- 頭の悪い子に限って延々演説するよなw
お前らそれを完全スルーしてて賢いわw
- 669 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 17:14:34.86 ID:BG4ZrdKI.net]
- >>657
Vは確かに最初の宣伝はそんな感じだっけど、現状はRustとGoを足して10で割ったくらいの状態だからなぁ
- 670 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 17:54:29.26 ID:0JDStoXf.net]
- V言語はマクロがないとかクロージャがないとか
あと安定しないままだよね
- 671 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 18:14:16.72 ID:CQiu8f2R.net]
- >>659
スルーというかNGWordに正規表現で .{50} としてるからまったく気づかない
- 672 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 18:59:02.09 ID:wv8X5M3X.net]
- >>652
そうして集めたPHPerたちが作ったWebシステムはどうなりましたか
- 673 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 19:35:51.32 ID:gFm4wviN.net]
- >>663
facebookって言って超メジャーなサービスになってるよ。
- 674 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 19:40:32.31 ID:wv8X5M3X.net]
- >>664
facebookのPHPエンジニアが優秀=PHPエンジニアが優秀 という短絡思考には感服致します 障害者学級PHPoorたちの心のより所なんですね
- 675 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 19:54:22.21 ID:haRe9nr5.net]
- このスレだけ見てるとPHPerよりRusterのほうが危険で頭がおかしいと思ってしまう…
実際はそんな
- 676 名前:アとはないかもしれないが []
- [ここ壊れてます]
- 677 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 19:58:36.19 ID:gFm4wviN.net]
- >>664
え、どうなったか聞かれたから答えたらなぜかPHPともどもボロクソ言われるの、 意味がわからんのだが。
- 678 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 20:05:37.41 ID:g/vqQJB9.net]
- >>654
「unsafeに触らない限りは」だろ。 実際にはフレームワークとかライブラリとかが充実している言語のほうが開発効率は高い。 (すでに開発済みだからという理由だけど)
- 679 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 20:09:42.84 ID:nC7N6zb/.net]
- Rustは欲しいcrateほど放置されてるcrateやwipの空crateが一定数あるのが実用を考えた時に厳しい
RustのWinUI3対応早く来ないかなー 後別に何でもかんでも関数型になって欲しい訳でもないんだけど、スクリプト的な簡単に書きたいモチベーションのある言語に、関数のデフォルトのカリー化と、引数を渡すのと同じ記法での部分適用が導入されて欲しい 個人的に見た目がスッキリするし書くのが楽に感じるので Fsharp使えというのはそうかもしれない
- 680 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 20:31:38.25 ID:wv8X5M3X.net]
- >>667
元レス読めよ文盲 これだからPHPoorは さっさと氏ねゴミカス
- 681 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 20:39:12.10 ID:IqLRftxA.net]
- >>668
それはプログラミング言語の問題ではないな 純粋にプログラミング言語の比較でRustより上のものを挙げないと
- 682 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 20:39:56.09 ID:haRe9nr5.net]
- webの世界を支えてるのはPHP
- 683 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 20:42:20.02 ID:haRe9nr5.net]
- >>671
使いやすさから言えばjavaやc#のほうが上だと思う Rustは使いどころがまだ確立されていない
- 684 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 20:48:04.21 ID:4vP7lCV8.net]
- >>671
なら「標準ライブラリが充実している」でいいよ。 標準ライブラリが言語に含まれないとは言わんよな?
- 685 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 20:50:18.47 ID:MnFLToWU.net]
- >>669
ところでカリー化はラムダではあかんの?
- 686 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 20:53:57.99 ID:nx5fqsfT.net]
- >>673
そこはさすがに誰が見ても Rust>Javaはあらゆる面から全員一致として Rust>C#もほとんどの人が同意でしょ
- 687 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 21:15:04.96 ID:hRiSi6np.net]
- >>676
それは過大評価し過ぎでは…
- 688 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 21:31:56.88 ID:Br+emjPa.net]
- 言語自体の比較だと現状ではRustが一番かもしれん
新言語が現れなければじわじわと利用環境や利用者を拡大していくのだろう
- 689 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 21:33:57.02 ID:a6HBTm5x.net]
- >>669
> 後別に何でもかんでも関数型になって欲しい訳でもないんだけど リストのリテラルが無いあたりで割り切りを感じるよな あくまで軸足は関数型言語にはないという リストの結合とかカリー化や関数結合もデフォで組み込まれてたら もっと違う感じだったやろねえ
- 690 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 22:02:06.45 ID:GQWBx4Yt.net]
- ガベージ出まくるからゼロコスト抽象にならない問題点などあるよな
見かけはマクロでわかりやすくする程度が現実解 まあ普通のGC言語でもサポートしてないのが多い中 そこまで必要とされていない機能なのかもしれん
- 691 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 22:13:42.74 ID:haRe9nr5.net]
- なんでIDコロコロ支店の?
- 692 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 22:23:42.64 ID:wv8X5M3X.net]
- いきなりコロしとか言い出すとかマジやべえな
- 693 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 23:37:25.21 ID:nC7N6zb/.net]
- >>675
処理として等価なものが書けるという意味では問題ないよ それよりもっと簡単に書けるようになるので、あると嬉しいなって
- 694 名前:デフォルトの名無しさん mailto:sage [2022/04/08(金) 23:52:45.49 ID:fiUiUlD4.net]
- rust推しに狂気を感じるスレ
- 695 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 00:07:03.26 ID:il24SwZF.net]
- それしか言えんのか
- 696 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 00:20:56.02 ID:qlihBLS+.net]
- >>650
似てはいる。 「JavaではCS学生には過
- 697 名前:ロ護すぎ」が趣旨だと思うが、
同様にRustを考えるなら ・修得概念は多いがこれは暗記の類であり、チャレンジではない ・コンパイラ頼みで考える事を放棄してるから、成長しない で、アカデミックには不適だ。 大学なんて就職予備校だと割り切るならありだが。 Goなら、 ・修得概念は少なく抑えられている ・構成自体は何でも出来る(はず、多分) ・やたらコピペさせられる点が糞 であって、教育/アカデミックには向いてる。(少なくともRustよりはいい) 「データ競合」「デッドロック」等のバグをコンパイラに頼って回避してる限り、 コンパイラがサポートしてくれない状況では確実にやらかす。 コンパイラのサポート無しでも回避出来る腕だが、さらにコンパイラでダブルチェックする、が正しい。 フレームワークなんて暗記の類で、ちゃんとプログラミングが出来る奴なら、使えば使えるようになってる。 フレームワークは生産性を上げる為の手段であり、 プロダクトを目指さなくてもいい学生の時点で型に嵌めてしまうのは成長を阻害する気がする。Rustがこれ。 (他言語でもフレームワークを使って課題製作して出来たつもりになってるのなら同様ではあるが、 既に書いたようにRustの場合は言語自体がフレームワーク化してるので、これを回避出来ないのが難点) [] - [ここ壊れてます]
- 698 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 01:45:47.90 ID:H+Mv/KjD.net]
- コンパイラのチェックが厳しい→コンパイラに頼る→学習にならない
もう言語の利点を語るんじゃなくて、学習に向いてるかどうかってことに話を絞ることでRust批判につなげることにしたのね
- 699 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 01:58:00.79 ID:il24SwZF.net]
- 暗記ごときでボローチェッカーに対処できるなら自他ともに認めるRustの学習曲線の問題は発生しないんだよなあ
- 700 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 02:01:36.12 ID:il24SwZF.net]
- あとデッドロックは別にRustで静的に防止できる類のバグではないぞ
メモリリークと同様だね
- 701 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 02:15:58.74 ID:eXc0QQCs.net]
- 言語として魅力を感じるのはGoよりRustだが、将来的にGoよりシェアを拡げるかと言われたら疑問
- 702 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 02:26:41.71 ID:730EZC4A.net]
- Rustはシステムプログラミングの分野でだけちゃんと生き残れば大成功だよ
あとは特にハイパフォーマンスや低コストが要求されるとこくらいか ほとんどのアプリケーションでは、JavaやらPythonやらなりの高水準言語にて、より適す言語が見つかるやろ
- 703 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 03:28:08.67 ID:iJevktt3.net]
- >>691
Javaの諸々の弱点を克服したものがRustであるため 従来Javaで書かれていた分野にRustが食い込んで行きつつあります
- 704 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 03:34:37.18 ID:ntDYOunj.net]
- ツルツル無毛の奇麗な一本筋なんだろうね
- 705 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 04:14:38.03 ID:0HVqg1ER.net]
- FacebookがバックエンドをJavaからRustにした記事でJavaの問題点が多数挙げられていたな
- 706 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 05:55:15.91 ID:GQoYu9QH.net]
- 他部分の結論がまだ早いが、環境的な点から考えて、
GoはJavaとPythonと比べて、教育言語として価値が高いことは今のところない ・良くも悪くもOOPではない。抽象化のレクチャの定番が崩れている ・コンベンション重視のせいで、文化風土が専制的 (たとえばインデントは実質タブしか。手法にフレームワークを当てはめがち。考える余地を与えない) ・C言語の代わりにはならず、高級言語として教えるにもポインタの概念が余計 ・例外処理/リソース管理/並行処理あたりの重要ポイントの対応方法が独創的で潰しが効かない 以上、拡大解釈せずにあくまで業界最適化言語と
- 707 名前:考えるのが無難という意見だ []
- [ここ壊れてます]
- 708 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 06:21:18.57 ID:Qew3WBrk.net]
- >>695
そのGo批判は間違っている OOPはclassが無いだけだろ 例外処理もtry-catchが無いだけだろ GoもRustもどちらもclassやtry-catchは無いが異なる方法を取っているだけにすぎない 言語毎に様々な形態がある部分を取り上げて批判するあなたの視野が狭く偏見を持っているだけにみえる
- 709 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 07:21:22.99 ID:qlihBLS+.net]
- >>695-696
それは教育目的を明確にしておかないと空回りする。単純には以下となる。 ・実務: 大学は就職予備校である ・養成: 大学は人材養成所である ・アカデミック: その分野の発展を目指す 695は実務寄りの意見だ。 ただ、実務なら議論するまでもなく現在のシェア、または求人のシェア通りにやるべきであって、 それ以外を選ぶのは教授の趣味でありエゴでしかない。 今ならPython/Java/JavaScript/C#/C++/C/PHP/Rubyの順かと。 650記事と696(と686内俺のGoへの意見)は養成寄りで、人材の底上げを目指したものだ。 > ポインタを使うプログラミングは今日書かれるコードの90%には必要とならず、製品コードにおいてははなはだ危険なものであるということは素直に認める。 > その通りだ。そして関数プログラミングは実務ではほとんど使われていない。それも認める。 > しかしそれでも、最もエキサイティングなプログラミング仕事ではこれらは重要なものなのだ。 > たとえばポインタなしにLinuxカーネルで作業することはできない。 > Linuxのコードを1行も理解することはできず、実際ポインタの理解なしにはどんなオペレーティングシステムのコードも理解できない。 つまりはプログラミングドリルに何を用いるかで、プロダクトを目指したものではない。 だから界隈の文化なんて全部無視でよく、単に、学生の頭の体操/訓練に何が適しているかだ。 この場合、スタート時から色々概念が必要なRustは最悪で、仕様は軽ければ軽い程良く、 早い段階で「仕様とか概念に苦労せず」学生が自在に「こねくり回せる」必要がある。 こねくり回す時の苦労が養成になるので、そこは頑張って苦労しろ、というわけだ。 この用途なら、Goも悪い選択ではない。 が、まあ、素直にCを選択する方が妥当ではあるが。
- 710 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 08:15:54.24 ID:yjPUnyR6.net]
- 最初はC → Rustが王道だろうな
さすがにCのままだけでは効率悪すぎる
- 711 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 08:16:17.09 ID:cvyLC6WE.net]
- GoもRustもclassはない
でも実質似たようなことはできる でも実質は実質であり素直にOOPできるかと言えばそうでもなく変な制約がある ファイル分割とかしたいとか思わないならその限りではない
- 712 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 08:17:47.26 ID:ehpYMGIZ.net]
- goはある意味goroutineとchannelを使うための言語だしな。そこに価値を見出す人が使えばいいこと。
ただまぁ、独創的だから潰しがきかないとか批判しだしたらpythonも癖が強すぎてたいがいだがな。 結局普及したもの勝ち。
- 713 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 08:24:05.70 ID:cvyLC6WE.net]
- >>698
目的に応じて言語を選んだほうがいい C→Rustは狭すぎるし心に余裕がなくなるし楽しくない 標準的なGUIもないから入門には不向き 個人的には間にGC言語やPython挟んだほうがいいと思うよ
- 714 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 08:54:42.92 ID:0xXBKlCN.net]
- >>701
PythonよりはRustの方がええやろ Pythonは偏り過ぎ
- 715 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 08:56:00.27 ID:LAfniSDw.net]
- バランスいい言語ないの(´・ω・`)
- 716 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 09:09:13.58 ID:ehpYMGIZ.net]
- 個人的にはswiftがそこそこモダンな機能を一通り備えていながら癖の強くない文法でバランスがいい言語だと思うけど、
Apple依存というところが最大のネック。
- 717 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 09:09:29.66 ID:H+Mv/KjD.net]
- ないです
RustのGUIクレートってどれがいいんだろ
- 718 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 09:33:25.59 ID:cvyLC6WE.net]
- コンパイラチェックが厳しいで思い出した
全然関係ないけど自分は麻雀が打てない ゲームではできる 自分では上がりだと思ってても実際は上がれなかったりする 結局ゲームで判定してもらってる どこが悪いのかは自分で分かっていない コンパイラのチェックでは原因が出るのでどこが間違ってるのかはわかる
- 719 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 09:43:27.34 ID:7NJqkFJL.net]
- Rustのコンパイラはどの部分とどの部分がどういう問題となっていて今回のエラーとなっているのかを
複雑なケースでも丁寧に教えてくれて学習効果も高いですね
- 720 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 10:38:03.26 ID:ALVqghU/.net]
- 結局 c -> c++ -> rust って感じに進まないと理解できないと思うがな。
いきなり c -> rust で何をやってるか理解できるとはとても思えん。 この種のことをrust信者はすぐ誤魔化す。
- 721 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 10:45:26.66 ID:n9UcTFQC.net]
- >>708
どのあたりが理解できないと思う?
- 722 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 10:47:43.60 ID:3YobdmGS.net]
- >>708
そこは完全に逆 C++は学ぶ必要なし 今となっては何の価値もない言語 C++を学んでも回り道をしている無駄なunique_ptrくらいしかRustのために役に立つ知識がない
- 723 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 10:53:42.52 ID:EFTB/rfv.net]
- >>708
自分はそのルートだったけどC++を経由する必要はどうかなぁ 現代のC++をマスターするのはRust以上に難しいし、初心者が自分でどこまで学べばいいかを判断するのも難しそう まぁ結局我々は初心者ではないので推測で言ってもあまり意味はないけど
- 724 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 11:02:06.42 ID:SpxMIjuY.net]
- 要するにマロックだろ?
- 725 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 11:11:18.68 ID:UvtYS0nS.net]
- 単刀直入に言うと
実はC++とRustには共通点が非常に少ない 特にC言語との共通点を除くとほとんど残らない だから学ぶべきはC→Rustが正解
- 726 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 11:38:59.26 ID:P+77Yson.net]
- >713
>実はC++とRustには共通点が非常に少ない そういう嘘をつくからRust信者はクソ言われるんだよ。 Rustの根幹をなすメモリ安全性はC++のRAII/unique_ptrから着想を得た所有権/ムーブセマンティクスの運用を徹底することによって実現しているし、 Rc/ArcもC++のshared_ptrの機能を強化しているだけ。 引数渡しをムーブセマンティクスデフォルトにするという致命的ミスをしているからC++と別物のように見えるけど、 C++ユーザーからすればC++を少し洗練させたぐらいにしか見えない。 その実体を知りながら「共通点が非常に少ない 」とか言うのは詐欺師ぐらいなものだ。
- 727 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 11:49:01.58 ID:0K2sKttC.net]
- C++に着想を得ているのはそうだと思うけど、歴史通りの順番で学ぶ必要ある?
(その理屈だと最初はパンチカードからかな…) C++の後付したわかりにくいmoveを学ぶより、最初から洗練された方を学んだほうがいいと思うけど
- 728 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 11:53:43.59 ID:EFTB/rfv.net]
- C++の歴史を追っていくみたいなのは、言語設計的にはすごく学びがあって、好きな人にはおすすめなんだけど
ただプログラミングがしたい人におすすめできるかというと…
- 729 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 11:55:25.64 ID:cvyLC6WE.net]
- 現実的にはPythton or Java or C# → C → Rustかな
- 730 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 12:00:59.18 ID:LZU2nudI.net]
- 最近のC++はなんとRustの後追いをしている状況
例えばRustの中核となっている enum OptionとResult そして Iterator Optionは C++では std::optionalで これはC++17でようやく導入された Resultは C++では std::expectedで これは現在導入に向けて審議中 Iteratorは C++では std::rangesで これはC++20でようやく導入された このようにRustでの成功を見てC++が後から導入となっている 最近導入されたばかりなのでC++入門書や解説サイトにはもちろん出てこない 【結論】C++は学ぶ必要なし
- 731 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 12:05:05.94 ID:cvyLC6WE.net]
- C++は無駄に増改築を繰り返された老舗旅館
通路の途中で無駄に段があったり渡り廊下があったり HPに書いてある現代風の部屋に泊まれる場合もあるけど古い部屋に泊まることもある
- 732 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 12:09:41.54 ID:EFTB/rfv.net]
- C++98ならそんな増築感はなかったけど、そこまで戻るとRustとの共通点もほとんどなくなっちゃうしなぁ
- 733 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 12:15:44.17 ID:ehpYMGIZ.net]
- RAIIとテンプレートメタプログラミングが発見されてから独特の進化を始めたな。
- 734 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 12:16:15.06 ID:cvyLC6WE.net]
- >>718
>>720 新しい部分を指してC++を学ぶべきと言ってるのではないと思うよ それまでのC++からC++11 以降の新しい流れをみるんだろ C++で何が都合が悪かったか判る
- 735 名前:デフォルトの名無しさん mailto:sage [2022/04/09(土) 12:19:37.41 ID:EFTB/rfv.net]
- >>722
それって歴史を知っている我々には分かるけど初心者に分かる?
|

|