1 名前:デフォルトの名無しさん [2022/04/17(日) 17:52:35.38 ID:KG26dcth.net] スレタイ(順番はRedMonk準拠)以外の言語もok 前スレ 次世代言語24 Go Nim Rust Swift Kotlin TypeScript https://mevius.5ch.net/test/read.cgi/tech/1647887021/
503 名前:デフォルトの名無しさん mailto:sage [2022/05/09(月) 20:53:04 ID:S0Cki9Rv.net] >>494 競合なのは事実だろうけどGoやってるような人はRustも必要になれば普通に使えるでしょ エンジニア目線では特に対立関係にないから煽っても無意味だぞ
504 名前:デフォルトの名無しさん mailto:sage [2022/05/09(月) 21:00:58 ID:DoAIqFb7.net] 競合ではなく両方利用 Goで不十分なところはRustで書いている どこでもそうだよ
505 名前:デフォルトの名無しさん mailto:sage [2022/05/09(月) 22:46:52.00 ID:TDei0tm5.net] それができるんならCでいいじゃん
506 名前:デフォルトの名無しさん mailto:sage [2022/05/10(火) 03:38:38.78 ID:I4A9nNIt.net] 理想の家族 父 40歳 海外へ単身赴任(死ぬまで) 母 35歳 息子に甘い 姉 17歳 弟に甘い 俺 44歳 妹 15歳 多感な時期 俺に反発しながらも。。? 猫 ウンチしない 抜け毛ない 俺の声かけに無視しない
507 名前:デフォルトの名無しさん mailto:sage [2022/05/10(火) 08:39:54.21 ID:Hhyd/l4r.net] >>495 そうだぞ。 競合なのは事実だろうけどGoやってるような人はRustも必要になれば普通に使える、という体で話さないと嫌われるぞ。 それに、裁量権のない作業者の間では対立関係にないから煽っても無意味だぞ。
508 名前:デフォルトの名無しさん [2022/05/10(火) 20:07:58.34 ID:8UHmp6CE.net] 低レイヤーはRust 高レイヤーはGo この使い分けじゃいかんの?同じシステムプログラミング言語でも毛色が違うだろ GoogleとMicrosoftがRustに注目しているのもOS開発の目的であってGoでOS開発作ろうとはならんでしょ
509 名前:デフォルトの名無しさん mailto:sage [2022/05/10(火) 21:01:49.31 ID:mOdSHL41.net] 主張はわかるが、これはもしや片思いみたいなものではと見ている。 仮にGoユーザーの多くが低レイヤーにRustを使いたい結論だったとしても、 Rustユーザーの多くが高レイヤーにGoに使いたいという結論にはならない。 よってカップル不成立。
510 名前:デフォルトの名無しさん mailto:sage [2022/05/10(火) 21:17:09.90 ID:5Ln2ZQb8.net] 例えばウェブサーバーサイドもRustで書いたほうが早い速いしな
511 名前:デフォルトの名無しさん mailto:sage [2022/05/10(火) 21:25:40.62 ID:AAMxLs47.net] 低レイヤーのことは低レイヤーガールに聞けよ
512 名前:デフォルトの名無しさん mailto:sage [2022/05/10(火) 22:34:17 ID:M/BIyD/S.net] Goは良くも悪くもCっぽくって人間が気をつけて書かないといけない部分が多いんだよな 一度Rustに慣れてしまうと、Goで隅々まで気を使うのが面倒くさくなってしまう もちろん既存のGoプロジェクトはGoのまま書くけど、新規ならなるべくRustにしたくはなるな
513 名前:デフォルトの名無しさん mailto:sage [2022/05/10(火) 22:37:05 ID:1A7PmF6X.net] LinusはgitをC+シェルスクリプトで書いてた 書こうと思えば書ける でも普通に記述に時間がかかるので今は他の言語も役割分担してる
514 名前:デフォルトの名無しさん mailto:sage [2022/05/10(火) 23:04:46 ID:7R870FiC.net] Rustはデータ競合らへんは起きないけど、Box、Rc、Arenaを気をつけて使い分けないといけないのとか面倒だと思うけどな
515 名前:デフォルトの名無しさん mailto:sage [2022/05/10(火) 23:36:04 ID:M/BIyD/S.net] Goの一番の面倒さはnilとエラーハンドリングかな Option/Result型だけでも特別に用意されてれば、もっとGo使ってたかもしれん
516 名前:デフォルトの名無しさん mailto:sage [2022/05/10(火) 23:49:42.04 ID:Lq7F/6H2.net] >>506 Rcは出てこないプログラムも多い Arenaはほぼ完全に出てこない つまりそれらレアケースを元に語るのは現実的ではない
517 名前:デフォルトの名無しさん mailto:sage [2022/05/10(火) 23:52:42.15 ID:1A7PmF6X.net] Rustで引っかからずコードを書き上げるのはかなりの猛者だと思うよ 本当の意味での言語仕様部分は何とかなるかもしれないけどそこから先がつらい 入門4冊目の「コンセプトから理解するRus」tを読んで途中で投げ捨てた 本自体は良書なんだけどtrait境界がもう人間の理解を超えてる Cだと時間をかければ書き終えれるけど
518 名前:oグが入ってる可能性がある [] [ここ壊れてます]
519 名前:デフォルトの名無しさん mailto:sage [2022/05/10(火) 23:56:51.45 ID:1A7PmF6X.net] Rustはある程度から人間の理解を超えて来るので一定程度以上勉強しても無駄かなと
520 名前:デフォルトの名無しさん mailto:sage [2022/05/10(火) 23:57:58.56 ID:M/BIyD/S.net] >>509 その辺はScalaで学んだからRustでは苦労しなかったけど 最初訳わからんってなるのは分かる
521 名前:デフォルトの名無しさん mailto:sage [2022/05/10(火) 23:59:30.65 ID:1A7PmF6X.net] 書名でググると上位に出てくるこの記事がまさにそれ https://qiita.com/seikoudoku2000/items/28c5c6b09dcaea1744dc
522 名前:デフォルトの名無しさん mailto:sage [2022/05/11(水) 00:06:17.66 ID:0PGn8I2M.net] プログラミングはは知的生産だと思ってたけどこれはもう違う別の何か 他人の書いたコードは意味が分からないというけどそれ以前に自分で書いてもわけがわからない 理解の外にあっても動くからあっている コンパイルエラーが出ないからあっている それは本当に正しいことなのか バグが入ってないのかはもちろん期待した動作なのかすらわからない 人間が揺さぶられてきている
523 名前:デフォルトの名無しさん mailto:sage [2022/05/11(水) 00:07:09.92 ID:xUytDrfJ.net] 多くの人に知ってもらいたい これはもうプログラムではないよと
524 名前:デフォルトの名無しさん mailto:sage [2022/05/11(水) 00:09:05.79 ID:SabgIUuG.net] 実装に必要なtraitを境界として追加しただけで煩雑だけど難しくはないよね
525 名前:デフォルトの名無しさん mailto:sage [2022/05/11(水) 00:13:46.50 ID:q+AJMQiL.net] >>509 そのtrait境界は意外に理解が簡単だった ジェネリックにプログラムを書く時にそのジェネリックな型には何が来てもいいわけではなくて 書くプログラムの中で使っている機能(というかインタフェースというかメソッド)を持つ保証する(というか限定するというか制約条件を並べる)こと 例えば本スレからコピペだけど以下のフィボナッチ数列イテレータ 型へのtrait境界がwhereのところにあるClone(複製できること)とTryFrom<usize>(数値から変換できること)とnum::CheckedAdd(オーバーフロー検知付き足し算ができること)の3つを満たしてればどんな型でも適用可能 fn fibonacci<T>() -> impl Iterator<Item=T> where T: Clone + TryFrom<usize> + num::CheckedAdd, { let [zero, one] = [0, 1].map(|n| T::try_from(n).ok().unwrap()); itertools::unfold((zero, one), |(m, n)| m.checked_add(&*n).map(|f| { *m = n.clone(); *n = f.clone(); f }) ) } pub fn main() { for f in fibonacci::<i8>() { print!("{f} "); } println!(); }
526 名前:デフォルトの名無しさん mailto:sage [2022/05/11(水) 00:18:22.19 ID:xUytDrfJ.net] 実際にトレイト境界の条件の実装部分を読んでみた シンプルなマクロで書かれてる部分もあれば複雑な部分もある そこで書いてある実装が本当に確実の条件を満たしうるのかは分からないし ドキュメントを読んでも厳格な意味が書いてあるわけでもない どこかで漏れがあってもわからない
527 名前:デフォルトの名無しさん mailto:sage [2022/05/11(水) 00:37:16.75 ID:xUytDrfJ.net] 例えば条件の一つがよくよく考えてみればさらに二つに分離して考えないといけないものだと 後で判明するともう既存のコードがみんな死んでしまう 使用してる所を全部さかのぼって修正しないといけない それかRust自体の仕様変更で死んでしまったりいろいろ死にそうな要因がたくさんある マクロでやりすぎてる
528 名前:デフォルトの名無しさん mailto:sage [2022/05/11(水) 00:39:26.57 ID:OHUg1Auo.net] >>518 そんなこと起きたことがない 聞いたこともない机上の空論
529 名前:デフォルトの名無しさん mailto:sage [2022/05/11(水) 11:02:33.31 ID:ut6S4c2T.net] Rustの標準ライブラリの設計がそもそも間違ってて、その修正のために破壊的な変更がいきなりきたら大変だ、って話? そんな馬鹿な、と笑っちゃうね
530 名前:デフォルトの名無しさん mailto:sage [2022/05/11(水) 12:27:47.37 ID:0Stn7tVM.net] サプライチェーン問題は批判理由が見つからない人が持ち出しがち。 マクロがない言語だと、同じ機能をコンパイラやらランタイムが持ったりするわけだが、不思議に誰もそれらの機構を疑わなかったりする。 中身が可視化されたのに逆に疑わしく感じた場合は、まずは自分の知識が足りなかったことに気づきましょう。
531 名前:デフォルトの名無しさん mailto:sage [2022/05/12(木) 17:29:32 ID:LSv3zttQ.net] 実装の問題は重要だろ。 そもそも実装と独立に仕様だけ語れるような作りにrustはなってない。
532 名前:デフォルトの名無しさん mailto:sage [2022/05/12(木) 18:12:00.76 ID:cxVwbP/0.net] 何を問題視してるのかもうちょっとわかりやすく書いてくれないと議論にならん
533 名前:デフォルトの名無しさん mailto:sage [2022/05/12(木) 18:19:51.09 ID:q5adbU17.net] 判らないなら無理して首を突っ込むことはないかと…
534 名前:デフォルトの名無しさん mailto:sage [2022/05/12(木) 18:20:37.20 ID:q5adbU17.net] コーダー風情にはどこら辺に問題があるかすらわからないんだ ほっとけばいい
535 名前:デフォルトの名無しさん mailto:sage [2022/05/12(木) 18:57:51.28 ID:+0JH2q+I.net] >>522 依存型理論原理主義過激派かな?ちょっと面白い
536 名前:デフォルトの名無しさん [2022/05/12(木) 19:03:55.20 ID:KS5+XyCs.net] 依存型ってrustは入れてないやろ
537 名前:デフォルトの名無しさん mailto:sage [2022/05/12(木) 19:34:17.87 ID:B7YnOOaf.net] >>527 Π型はないけど、const genericsなら…
538 名前:デフォルトの名無しさん mailto:sage [2022/05/13(金) 10:40:27 ID:fhDjEdn1.net] >>521 ランタイムが持ってる言語ならランタイムをアップデートしたら終わり マクロの言語は該当箇所を探し出して修正して丸ごと再コンパイルが必要 工数考えたらどちらが有利なのかすぐ分かる 知識が足りないのはどちらなんだろうか?
539 名前:デフォルトの名無しさん mailto:sage [2022/05/13(金) 10:59:45 ID:0p7HEVH9.net] >>529 現実には起きない架空の話だから両者ともにバカげている
540 名前:デフォルトの名無しさん mailto:sage [2022/05/13(金) 12:10:30 ID:uaWVrnpQ.net] 笑っちゃうね
541 名前:デフォルトの名無しさん mailto:sage [2022/05/13(金) 12:50:06 ID:tAeYJnp8.net] >>529 ランタイムだけ差し替えられることに気づくとは…
542 名前:デフォルトの名無しさん [2022/05/14(土) 10:40:41.82 ID:vWT7MZ9I.net] さすがナレッジワーカーだね
543 名前:デフォルトの名無しさん mailto:sage [2022/05/14(土) 22:44:26.45 ID:z9ygdFkB.net] Juliaの今ひとつなところはswitch/case文がないところ あのパイソンでさえ導入したのに時代錯誤 それ以外は良さそうな言語 しらんけど
544 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 08:12:53.18 ID:peAa8dI5.net] Juliaではマルチディスパッチしろという方針なのかもしれんが、マルチディスパッチの方が他言語に普及してないのは機能として過剰な割に効率性に劣るからなんだろうかね
545 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 08:40:21.58 ID:gv+JQ3Ew.net] まつもとゆきひろ氏が考える、プログラミング言語の未来 https://logmi.jp/tech/articles/326541 楓:「今Ruby、Cの次に好きな言語はなんですか」。 まつもと:そうだな。Elixir、Go、Rustは気になるっちゃ気になるんですね。ただ、正直に言うとRustは僕の好みではない(笑)。 楓:おおー。気になるポ
546 名前:イントと好みじゃないポイントはどのあたりなんですか。 まつもと:やはりCを一番よく書くので、システムプログラミングの領域が、私がよくプログラムする領域なんですけど。そこに出てくる言語の中で今一番メジャーなのは、GoとRustであるというのが気になるところですね。 だけど、Rustが型でいろいろなことを言ってくれるのはうれしいところとうれしくないところがあって。つまりコンパイラに怒られるんですね。僕はコンパイラに怒られるのがすごく嫌いなので(笑)。なんかストレスがたまるんですよね。 楓:(笑)。 まつもと:どちらかというと、技術的なことではないところで一緒にがんばれるものがいいなって思っていて(笑)。 [] [ここ壊れてます]
547 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 08:49:59.25 ID:SgXGf86o.net] どの言語でも間違えればコンパイラに怒られる その程度でストレスがたまるならば頭がよくないのかもしれない
548 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 09:40:56 ID:N7JPl8Lh.net] コンパイラに怒られずにランタイムに怒られる方が ストレスたまりそうなんだが違う感覚の 人もいるんだなあ
549 名前:デフォルトの名無しさん [2022/05/15(日) 09:42:48 ID:am1d3hDu.net] 必要以上に怒られてるからクソって話なんでしょ
550 名前:デフォルトの名無しさん [2022/05/15(日) 09:49:32.98 ID:2T0P5EJz.net] ランタイムに怒られてもうまく問題点を見つけ出せる方が頭良い気がする 僕はあんまり賢くないからコンパイラが叱ってくれる方が楽
551 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 09:50:12.91 ID:C1KM65Ry.net] 自分がすごくプログラミングが出来る自負があるから、コンパイラに怒られるとプライドが傷つくから嫌だって言ってるようにも見える
552 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 09:52:43.88 ID:lixSo2ZB.net] ひろゆきは賢いからコンパイラは余計なことを小うるさく言わんでいいって感じ?
553 名前:デフォルトの名無しさん [2022/05/15(日) 09:52:58.51 ID:WKOj7Eq4.net] 自意識過剰で被害妄想だな コンパイラは怒ってるのではなくて指摘してるだけ
554 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 10:06:42.86 ID:6dsDjrbs.net] The compiler is your friend
555 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 10:31:50.86 ID:C1KM65Ry.net] Rustのコンパイラに怒られるってことは所有権のシステムとかが全然理解できてないんだと思う 前の職場にもc/c++を数十年やっててrustを毛嫌いしてる人何人かいたけど、今更自分がコンパイラに指摘されまくるのがプライドが許さないんだろうな
556 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 10:45:11.53 ID:duXfvT8B.net] >>542 「ゆき ひろ」なw
557 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 11:08:18.85 ID:68DnPwxB.net] 人間の理解を超えたところから怒られるのは違うかなと それってプログラムなのか?
558 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 11:12:52.72 ID:68DnPwxB.net] 囲碁や将棋はもうAIの方がかなり上に行っちゃって誰もAIに勝てない プロも含めてAIの手を研究してるけど理解できないのがかなりある それを意味も分からずただなぞって指してる人もいる プログラムはそのレベルじゃないけどそういうものに近づいてる
559 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 11:25:25.72 ID:+6kSxcdv.net] デバッグ含めた開発効率の良さを考えると可能な限りコンパイル時に怒って欲しいかな コンパイラが怒ってくれる > ランタイムが怒ってくれる > 誰も怒ってくれない
560 名前:デフォルトの名無しさん [2022/05/15(日) 11:45:48.58 ID:cL2R0opO.net] プログラムを書いてエラーが出ると「自分が否定された」「尊厳を奪われた」と感じる人もいる、という話 https://togetter.com/li/1698737
561 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 11:57:01.15 ID:UbJQuPTx.net] ランタイムは運良くバグを踏まなければずっと怒られずに済むのに対してコンパイラは必ず怒られるから 前者の方がいいって人もいるんだろうね
562 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 12:21:03.73 ID:uEAI3vEe.net] ドMなので
563 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 12:28:05.42 ID:0scjaaG3.net] コンパイルが通って、いざ実行してみたら 「segmentation fault.」とそっけなく言われるのもまた一興
564 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 12:43:05.95 ID:wf2KlSEE.net] >>545 そうゆう浅はかな考えは恥をかく元。常に所有権を意識しなきゃならないので、言うなら、呼び出される上のほうでロックしてても 複数スレッドでアクセスして安全なのに、所有権をいちいち意識しなきゃならないという事だ。 Rustはスクリプト言語の作者からすれば、面倒な記述が多すぎると感じて当たり前 強いて言えば、こういう浅い奴がマウントとってる現状のRustコミュニティは反吐が出る、Rubyコミュニティも好きでもないけど
565 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 12:56:50 ID:+mKsOYSe.net] >>554 貴殿も的外れ
566 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 14:03:03.21 ID:8BbShedD.net] そろそろ指摘するんじゃ無くて、勝手に直したり、良きに計らって欲しい。
567 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 15:06:40.70 ID:v+sSFlFE.net] >>545 実はそういうは人を排除するためだけにRustのプロジェクトを立ち上げたりしてる組織もある
568 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 15:29:27.60 ID:2Vop47w6.net] 陰湿やなあ
569 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 16:17:30.31 ID:SzIUVHZr.net] 今のコンパイラはエラーが起きた行を指摘するけど 「この辺がちょっと気になります」 と指摘してくれるコンパイラが そろそろ出てきてもいいような気がする エラーの種類はそんなにないと思うので
570 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 16:25:25.34 ID:VMVrIVgn.net] 静的解析ツールなら前からあるぞ。高いけど。
571 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 17:05:02.60 ID:68DnPwxB.net] 松本が所有権を理解してないんじゃないと思うがw まっつの言うこととこのスレの指摘はずれてると思う 松本の言ってることを理解してないだけ 気を付けて普通に書いてバグが出ないのが普通 それでも日常的にコンパイラに怒られるのは人間じゃなくて言語がおかしい
572 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 19:34:19 ID:bvYh9RC/.net] なんか最近開発に興味なくなってきた こんな時みんなどうしてるの? プログラミングだけが俺のアイデンティティだったのに 死ななきゃいけない?
573 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 20:04:07 ID:ezWJ6neI.net] さぁ?江頭2:50見て元気を貰うとかかな
574 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 20:21:42.85 ID:Fhttg/Du.net] >>563 あ?バカにしてんの?
575 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 21:31:15.68 ID:Wjdq3fA+.net] 最近のげんこはprintをpirntとか書くと、 候補を提示してくれるよね。 あたまいい!!
576 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 23:05:43 ID:QlsYdN5b.net] >>556 一部のコンパイルエラーは修正コード提案してくれるしIDEからボタンぽちで修正できるから、 それ発展させて意図が不明確なコードでも何種類か修正候補出してくれるようにならないかな
577 名前:デフォルトの名無しさん mailto:sage [2022/05/15(日) 23:18:12 ID:yIEtIhqx.net] >>565 Qiitaに投稿された「TypoScriptを作った」を思い出した レーベンシュタイン距離が近ければOKっていうネタ言語
578 名前:デフォルトの名無しさん mailto:sage [2022/05/16(月) 05:52:10.13 ID:x9xW3Kri.net] >>562 ぼくも(´・ω・`)
579 名前:デフォルトの名無しさん mailto:sage [2022/05/16(月) 07:12:48.31 ID:3AP7f9yS.net] 英語圏のフォーラム見に行くくらいモチベあったのにな
580 名前:デフォルトの名無しさん mailto:sage [2022/05/16(月) 08:44:14.30 ID:IfoxgD2F.net] >>545 Rustはマナー講師みたいなものだろ。 Rustが望ましいと考えるスタイルを強制して他のやり方を許さない。「なんで?」と理由を聞いても「それがルールだから」とか理解しがたいことしか言わない。 せめて「スタックにデータを保存するため」とか「Cleanみたいに参照透過性と性能を両立させるため」とか言えばいいのに、そういった思想的な背景を説明しないからマナー講師が跋扈する。
581 名前:デフォルトの名無しさん mailto:sage [2022/05/16(月) 09:01:06.67 ID:nGMMRLLq.net] >>570 それはどのプログラミング言語でも同じ。 いずれの言語も独特のスタイルを押し付けてくる。 もしそれを感じ取れないならば、それは特定のスタイルに慣れてしまっているだけに過ぎない。 例えばわかりやすい例を持ち出せば、リアクティブな言語や宣言的な言語では、 a = b + 100 と記述しておけば、aが変わればそれに応じてbが変わるし、bが変わればそれに応じてaが変わる。 ところがそうでない不便な言語に出会ったときに、 双方向に自動的に変わってくれないために苛立つかもしれない。
582 名前:デフォルトの名無しさん mailto:sage [2022/05/16(月) 11:59:09.62 ID:TAALxp7N.net] >>571 「それは特定のスタイルに慣れてしまっているだけに過ぎない。」と切り捨てているところに排他的思想&知識マウントを感じるね。 a = b + 100の例は代入演算に対して ("="から一般的に連想される) 「等しい」の意味を適用することにより生じる誤謬。 原理や技術的決定を理解せずに相手にルールを押し付けようとするマナー講師の話とは関係無いな。
583 名前:デフォルトの名無しさん mailto:sage [2022/05/16(月) 13:13:57.85 ID:IoIRdAU7.net] >>570 むしろスタイルを強制しないプログラミング言語なんて存在するのか?
584 名前:デフォルトの名無しさん mailto:sage [2022/05/16(月) 13:41:05.21 ID:8gGmt1rZ.net] 松本がRust好きじゃないのはまあそうだろうなとは思う。 この人、テストコードとかも好きじゃないとか言ってたし。 個人的にはそれじゃ仕事にならんだろとか思ったりはするけれど、とりあえずこの人のスタンスは一貫はしてるよ。
585 名前:デフォルトの名無しさん mailto:sage [2022/05/16(月) 18:39:47 ID:qW5+0T97.net] >>570 マナー講師はフォーマットみたいな個人の好みレベルの話で コンパイラが指摘する構文とかセマンティクスはその言語の世界における自然法則みたいなものでは
586 名前:デフォルトの名無しさん mailto:sage [2022/05/16(月) 19:09:08.37 ID:R1kAqWTp.net] >>575 エラーメッセージの問題じゃなくてドキュメントの問題かもしれないけど、エラーの形で否定するなら納得のいく理由を教えてほしいものだわ。 自然法則みたいな原理があるなら、その原理からどう推論したらそのルールになるのかの考え方も欲しいところ。 まぁ、それ以前のエラーメッセージしかしないクソ言語も多いけど。C++とか。
587 名前:デフォルトの名無しさん mailto:sage [2022/05/16(月) 21:09:51.80 ID:qW5+0T97.net] >>576 rustのlifetimeとかborrowing周りのエラーはそんな感じでエラーになった理由は教えてくれるよ 例えばどんなエラーの原因を分かると嬉しいと思う?
588 名前:デフォルトの名無しさん [2022/05/17(火) 03:36:27.01 ID:maKCFX0H.net] Rustのエラーメッセージの親切さは異常
589 名前:デフォルトの名無しさん mailto:sage [2022/05/17(火) 04:13:37.47 ID:tz+YwBRZ.net] 美人女教師のイラストでも添えたら エラーメッセージもそれっぽい口調にして
590 名前:デフォルトの名無しさん mailto:sage [2022/05/17(火) 08:12:17.48 ID:t8H/GFrA.net] >>577 原因じゃなくて原理ね。 エラーメッセージとしてはとりあえずは原因と解決策で十分だけど、verboseの時とかは技術的背景とかポリシーとかを説明した解説へのリンクがあると嬉しい。特に制約の厳しいライフタイムとか借用とか。 まぁ、そうなるとrust版D&Eを書くようなものだから大変か。
591 名前:デフォルトの名無しさん mailto:sage [2022/05/17(火) 08:22:18.93 ID:aOp3kwmZ.net] >>580 現状でもエラーによってはGitHubのissueへのリンクが付いてるから、具体的にこのエラーでこのページへのリンクを付けるべきって提案があれば受け入れられる可能性は高いと思うよ
592 名前:デフォルトの名無しさん mailto:sage [2022/05/17(火) 08:39:46.07 ID:3guGxSPi.net] カンマとピリオドの間違いとか カンマが抜けているとか うっかり全角文字で記号をうっているとか 初心者にありがちなエラーを 「ひょっとして・・・」 と教えてくれるとうれしいかもしれない
593 名前:デフォルトの名無しさん mailto:sage [2022/05/17(火) 09:03:36.05 ID:t0SSI9IZ.net] コンパイラ「Did you mean ',' instead of '.' ?」 俺「Fuck off!」
594 名前:デフォルトの名無しさん mailto:sage [2022/05/17(火) 11:37:57.12 ID:V5JE6XCC.net] >>580 例えば、↓のコードをコンパイルすると https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=0bd550e905a2263a33895815c4430436 error[E0499]: cannot borrow `x` as mutable more than once at a time てな感じでエラーコードが表示されて、以下の解説ページへのリンクが貼られている https://doc.rust-lang.org/stable/error-index.html#E0499 この中から関連するリファレンスへのリンクが貼られている 現状のドキュメントで十分ではないという問題はあるかもしれないけど、>>580 で言われているような方向性にはなっているよ >>582 上のコードのセミコロンを全角にしてみたらまさにそんな感じのメッセージが出た https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=118aa7e31d9c6c786d222f34a66623c3 error: unknown start of token: \u{ff1b} help: Unicode character ';' (Fullwidth Semicolon) looks like ';' (Semicolon), but it is not
595 名前:デフォルトの名無しさん [2022/05/17(火) 16:48:28.24 ID:DWSI+bpc.net] コンパイラのエラーメッセージに外部サービスのリンクって、もしそのサービス終わったらどうすんの?
596 名前:デフォルトの名無しさん mailto:sage [2022/05/17(火) 17:38:26.91 ID:V5JE6XCC.net] >>585 rustのことなら公式サイトへのリンクだよ さすがに言語のメンテナンスが続く限りは大丈夫でしょう
597 名前:デフォルトの名無しさん mailto:sage [2022/05/17(火) 19:22:14 ID:ARYpWsQd.net] なお誰もやらんもよう
598 名前:デフォルトの名無しさん mailto:sage [2022/05/18(水) 09:51:35.50 ID:ynn+jzpi.net] 最も重要なマナーは プログラムなのかデータなのか不明な文字列等を使ってはならない つまりインタプリタを作ってはならない 文字列指向が好きな人にとっては オブジェクト指向こそが文字列を否定するマナー講師だった OOPを無視してstatic変数を使ってもコンパイラに怒られることはなかった 怒っているのはいつも人間だった
599 名前:デフォルトの名無しさん mailto:sage [2022/05/19(木) 01:27:36.14 ID:Ahp8TrG/.net] Rustちゃんは生活のすべてを管理されたトップアスリートでヘソ出しユニに胸はぺったんこでショートヘアのすっぴんだけど最高の記録を出す Goちゃんはそんじょそこらの陸上部員で県大会レベルだけどボインボインのロングでシャワーを浴びたらそのままGoコンにGoできる どっちがいいかって話よ
600 名前:デフォルトの名無しさん mailto:sage [2022/05/19(木) 01:29:12.91 ID:Ahp8TrG/.net] なおGoちゃんは無限に二股をかけられるという特技もある
601 名前:デフォルトの名無しさん mailto:sage [2022/05/19(木) 01:33:58.07 ID:d4KplWCH.net] 意味不明なたとえ受けると思ってそう
602 名前:デフォルトの名無しさん mailto:sage [2022/05/20(金) 01:02:59 ID:A/bJmwRQ.net] レベルが低すぎてRustスレで書けないRustの話しかしない駄スレ
603 名前:デフォルトの名無しさん mailto:sage [2022/05/20(金) 03:37:27 ID:tiOCYDba.net] ____ / \ / _ノ ヽ、_ \ / o゚((●)) ((●))゚o \ ほんとはRustスレでやりたいんだお… | (__人__) | \ ` ⌒´ / ____ / \ / _ノ ヽ、_ \ / o゚⌒ ⌒゚o \ でもRustaceanはクオリティ高いスレしか相手してくれないお… | (__人__) | \ ` ⌒´ / ____ /⌒ ⌒\ /( ●) (●)\ /::::::⌒(__人__)⌒:::::\ だから次世代言語スレでやるお! | |r┬-|