2024.12.24
ビジネスが急速に変化する現代は「OODAサイクル」と親和性が高い 流通卸売業界を取り巻く5つの課題と打開策
リンクをコピー
記事をブックマーク
司会者:mrknというRubyに詳しそうな方から、まつもとさんに質問です。「最近おもしろいと思っている新しいプログラミング言語はありますか?」
まつもとゆきひろ氏(以下、まつもと):「Erg」という名前のプログラミング言語を作っている人がいて、これはPythonへのトランスパイラーなんですけど、言語そのものはPythonと似ても似つかない感じで非常におもしろいですね。
広く使われるかどうかはちょっと自信がないんだけれども、いろいろなおもしろいアイデアが詰まっているので、最近はそのリファレンスマニュアルを読むのが楽しみで、少しずつ読み進めていますね。
実際にソースコードもあって、ソースコードはRustで書いてあるんですが、実際の言語は、まだできていない機能がリファレンスにはすでに書いてあったりするので、そういう意味でおもしろい感じではあります。夢のある言語ですね、Erg、「エルグ」と読むんですかね。
司会者:はい、ほかに質問ある方はどんどんどうぞ。
おっ、質問が来た。「ボトムアップでRubyが改善されているとのことですが、ユーザーからのFeature Requestsを取捨選択する基準はありますか?」
まつもと:そうですね、2つあって、1つは既存の部分。Rubyはけっこうでかいので、既存の部分との間の整合性というんですかね、矛盾みたいなものがあるかどうかというのが1つですね。
2番目は、たぶんメソッド名、あるいは文法が増えるので、それに対して適切なノーテーション……なんて言うの、見栄えや名前がきちんとついているかというところの2点が基準になります。
司会者:2点ってビシッとスラスラ言えるのはさすがですね。ありがとうございます。
司会者:次、「以前のお話で、ASTクラスを公開したのはツールのためというお話だったかと思うのですが、今後、機能強化をする予定はありますか?」
まつもと:ASTの機能強化の予定は、今のところはないんですが。ただ、ASTの前段になるパーザーについてはなんとかしたいなと思っています。というのも、今のRubyのパーザーとそれの派生、「Ripper」とか「Parser gem」とかって完全なRubyのプログラムしか解釈できないんですよね。
なんだけど、例えばLSPとかを作ろうとすると、書きかけのプログラムでここまでパーズして、あとはまだまだエラーですみたいなところも、ある程度パーズしたいわけですよ。エラートレラントというんですけども。
そういう感じのパーザーを作るのを支援したいなという話はあって、具体的には明日話をするケビン・ニュートンが手を挙げてくれているので、彼の仕事がパーザーの改善のベースになるんじゃないかなと思います。
司会者:とのことです。ご質問ありがとうございます。
司会者:次、Colbyから、「What's your favourite new default gem in Ruby 3.2 and why is it syntax_suggest?」。これは、Colbyが代筆してくれているけれども、syntax_suggest gemのオーサーからの質問です。
まつもと:syntax_suggestですって(笑)。いや、でもね、もしかしたらRubyのパーザーが、今度のケビン・ニュートンのパーザーで改善されたら、syntax_suggest相当は、実はビルトインになるかもしれないなとは思っています。でも今は、syntax_suggest、すごくいいよねと。
司会者:syntax_suggestが何かというと、2021年の「RubyKaigi Takeout」で発表してくれた、dead_endというgemが。
まつもと:リチャード・シュニーマンのdead_endの発表がおもしろすぎて、本質的なところが頭に入らないっていう欠点があったんだけど(笑)。
司会者:彼、本当にプレゼンが最高ですよね。
まつもと:最高だけど、おもしろすぎるよね。
司会者:はい、次の質問です、「Rustは、Matz' Ruby Implementationに入るのでしょうか?」。「入るのでしょうか?」というのはどういう意味だ? じゃあ、RustがMRIのビルドスタックに入ったことについて、葛藤などがあったのであれば教えてください。
まつもと:ちょっと話したのもあるのですが、CRuby全体をRustで置き換えてRustRubyにするかみたいな話はぜんぜんないです。やはりRubyの本質的な部分である、RubyとCで実装するというポリシーは変更ないです。
ただ、オプショナルな部分について、今回はYJITでしたが、ほかの例えば、Bundler gemとかの実装にRustが入ることはあり得るとは思っています。だけど、コアの部分に関してはCのまま、そこは変わらない感じです。
司会者:個人的になんか嫌だなとかは思わなかったんですか? 「Rustかよ」みたいな「C書けよ」とか。
まつもと:私個人の信条として一番大事なのは、開発者のモチベーションだと思うんですね。例えばまつもとの好みで、「開発される言語、Rustは絶対ダメ」って言われるのは、だいぶモチベが下がるという可能性を考えた結果、コアじゃない部分については許容したほうが、トータルの開発の速度が上がるんじゃないかなと思って許可しました。
司会者:なるほど、ありがとうございます。
司会者:質問があるので続けますね。「LSPの拡充以外で足りないと思っているツールってありますか?」
まつもと:足りないと思っているツール。どうだろうな……。いや、すぐには思いつかないんだけど、「TypeProf」と「Steep」あたりで、もっと強化できる余地はないんだろうかって思うところもあるんだけど。
あとは、そうですね。個人的には、RuboCopのルールを選ぶのがタルいので(笑)、あなたのプロジェクトに対して最適なCopの集合を教えてくれるツールとかあるとうれしいなって思っていますけど(笑)。
個人的には、私の趣味に合わないルールがけっこうたくさんあるんですよね。そういうのは全部オフにしたいんだけど(笑)。だけど、ぜんぜんないのも嫌だというのもあって、そのへんのバランスを取るツールがちょうどあるといいなと思っています。もしかしたらStandard gemもそうなるのかなと思ったんだけど……それでいいのかな、ごめんなさい、歯切れが悪くて。
司会者:あくまで個人の意見です、というかたちで「MatzCop」をパブリッシュするというのはどうですか?
まつもと:確かに、そういう手もあるかもしれない。「これ、これ、これをオンにするやつが好きです」とか?
司会者:でも、RuboCopの設定を全部読まなきゃいけないですからね、なんとかCopの挙動とか、すごく膨大なので。
まつもと:一番簡単なのは全部オンにする。なんだけどそうすると、ここは僕は気にしないのにというところまでなんかすごく怒られるんだよね(笑)。でも、全部オフにすると意味ないしという感じですね。
司会者:そろそろいい時間なので、今日の最終コマ「Ruby Committers vs The World」でも、まつもとさんにいろいろぶつけるチャンスがあるかと。
まつもと:ぶつけられるんだ(笑)。
司会者:なので、いったん朝のセッションはここまでにしたいと思います。ありがとうございました、まつもとさん。
まつもと:ありがとうございました。
(会場拍手)
2025.01.09
マッキンゼーのマネージャーが「資料を作る前」に準備する すべてのアウトプットを支える論理的なフレームワーク
2025.01.15
若手がごろごろ辞める会社で「給料を5万円アップ」するも効果なし… 従業員のモチベーションを上げるために必要なことは何か
2025.01.10
プレゼンで突っ込まれそうなポイントの事前準備術 マッキンゼー流、顧客や上司の「意思決定」を加速させる工夫
2025.01.07
資料は3日前に完成 「伝え方」で差がつく、マッキンゼー流プレゼン準備術
2025.01.08
職場にいる「嫌われた上司」がたどる末路 よくあるダメな嫌われ方・良い嫌われ方の違いとは
2025.01.07
1月から始めたい「日記」を書く習慣 ビジネスパーソンにおすすめな3つの理由
2025.01.14
コンサルが「理由は3つあります」と前置きする理由 マッキンゼー流、プレゼンの質を向上させる具体的Tips
2025.01.10
職場にいる「できる上司」と「できない上司」の違いとは 優秀な人が辞めることも…マネジメントのNGパターン
2025.01.09
記憶力に自信がない人におすすめな「メモ」の取り方 無理に覚えようとせず、精神的にも楽になる仕事術
2025.01.08
どんなに説明しても話が伝わらない“マトリョーシカ現象”とは? マッキンゼー流、メッセージが明確になる構造的アプローチ
安野たかひろ氏・AIプロジェクト「デジタル民主主義2030」立ち上げ会見
2025.01.16 - 2025.01.16
国際コーチング連盟認定のプロフェッショナルコーチ”あべき光司”先生新刊『リーダーのためのコーチングがイチからわかる本』発売記念【オンラインイベント】
2024.12.09 - 2024.12.09
NEXT Innovation Summit 2024 in Autumn特別提供コンテンツ
2024.12.24 - 2024.12.24
プレゼンが上手くなる!5つのポイント|話し方のプロ・資料のプロが解説【カエカ 千葉様】
2024.08.31 - 2024.08.31
育て方改革第2弾!若手をつぶす等級制度、若手を育てる等級制度~等級設定のポイントから育成計画策定まで~
2024.12.18 - 2024.12.18