パスワードを忘れた? アカウント作成
15797683 story
Linux

Linuxのバージョン6.1でRustを導入へ。トーバルス氏が明言 83

ストーリー by nagazou
導入 部門より
ZDNetの記事によると、Linus Torvalds氏がLinuxカーネルの記述言語としてプログラミング言語Rustを導入する方針を明言したという。Torvalds氏はZDNetとのインタビューの中で「何かおかしなことが発生しない限り、それ(Rust)は6.1で導入される」と述べたとしている。記事によるとRustを導入するかどうかという議論は、かなり前から存在していたとされる(ZDNet Japan)。
  • by Anonymous Coward on 2022年09月22日 13時44分 (#4330817)

    唯一の実装が規格~みたいなコミュニティーベースの発展途上のプログラミング言語を採用することを気にしないのか......
    #気にする業界・気にする分野の仕事をしている人は凄く気にする

    ここに返信
    • Linusの回答 (スコア:2, 参考になる)

      by Anonymous Coward on 2022年09月23日 14時45分 (#4331667)

      私は以前から、この分野の標準はゴミだと大声で主張してきた。標準が間違っているので、私たちは標準を無視している。Rustについても同じことが言えるだろう

      https://japan.zdnet.com/article/35193521/2/ [zdnet.com]

    • by Anonymous Coward

      気にする人が別実装を用意すれば良いのでは?

      # Rustはメモリの取り扱いに起因するセキュリティーホールが一掃されるので大歓迎

    • by Anonymous Coward

      参考までにお聞きしたいのですが、気にする業界・気にする分野というのは例えばどういうところなのでしょうか?
      工場では一度入れたら何十年も使い続けるそうですがそういうところでしょうか。

      • by Anonymous Coward on 2022年09月22日 14時23分 (#4330853)

        自分の知ってる範囲だと、自動車業界はかなり気にする。
        コンパイラのバグで不具合とか、過去にもあったし。
        ASIL-D相当だと、コンパイラもバージョン毎に認定が必要なんで、
        RUSTみたいに、頻繁にバージョンアップする言語は大変。

        • by Anonymous Coward on 2022年09月22日 20時08分 (#4331156)

          自分の知ってる範囲だと、自動車業界はかなり気にする。

          TOYOTA が 2025 に実用化するとする Arene は Rust だし、
          新規案件は以前とは事情が変わってきてるような。

          RUSTみたいに、頻繁にバージョンアップする言語は大変。

          Rust はプロジェクトディレクトリ下の rust-toolchain ファイルで
          コンパイラだけでなくツールチェインのバージョンを指定できる分
          他の言語より開発者全体で開発環境を統一するのは簡単では。

          Rust の採用が増えているのって、言語仕様もあるけど
          rustup + cargo の存在が大きいんじゃないかと思う。

      • Re:気にしないのか? (スコア:2, おもしろおかしい)

        by Anonymous Coward on 2022年09月22日 15時20分 (#4330910)

        医療機器業界も気にするよ。
        IEC62304って規格があって、医療機器も使用するソフトウェア(コンパイラや開発環境)
        を自社の製品開発に使用する為に、検証した上でSOUPとして社内規格に登録し、
        それを使用した開発を行なう事になるから、開発環境に不具合があって更新なんてなったら、
        自社開発のソフトウェアだけでも検証が大変なのに、開発環境の検証も再度行なう必要があるんで、
        結果的に開発期間の遅れに繋がるよ。
        なので、最新版が出たとしても、出来上がったソフトウェアに問題がない限り、
        開発環境は古いものを使い続けるよ。

      • by nekopon (1483) on 2022年09月22日 14時22分 (#4330851) 日記
        横から失敬しますがDoD [wikipedia.org]とかMISRA [wikipedia.org]とかがあがりますかね
      • by Anonymous Coward

        金融業界じゃないの? サグラダ・ファミリア建設中に前提がコロコロ変わったら困るわけで

      • by Anonymous Coward

        そもそも、オープンソースと商用ソフトを同列に論じちゃダメだと思う。
        オープンソースは少なくとも作ってる人たちは無保証でやってるんでしょ。

      • by Anonymous Coward

        基本的に産業系・組込系はみんなそうでしょ
        例えば、原発の安全性保証に関わる業界標準になるようなシミュレーション・コードを書くのにどのような処理系を選びますか?
        webアプリケーション開発だとかで定期的にスクラッチからの作り直しは想定内/計画済み、コンパイラなんてその時に切り替えても問題なしという開発とは違う
        (真面目にそういう質問をされるのが驚き)

      • by Anonymous Coward

        元ACです。皆さま回答どうもありがとうございました。
        勉強になりました。

    • by Anonymous Coward

      現状のLinuxが純粋なC言語じゃなくてgccの拡張機能にバリバリ依存した書き方されてんのに何言ってんの??

      • by Anonymous Coward

        最近はclangでもビルドできるようになったんだっけ

        • by Anonymous Coward

          それってclang側が頑張ってgcc相当の機能を実装したからでは。
          昔GPL3で新しいgccを利用できなかったFreeBSDの貢献も大きいかもしれません。

          Rustを使えば、単純にメモリ安全になるわけじゃない。
          正しくRustを使えば、その範囲でメモリ安全になる。危険な使い方をしたRustは、Cと変わらない。
          Rustは言語規格以外に、分野・用途別の共通のコーディング規約が定まらないと、お堅い業界では利用しづらいだろう。
          Linuxがその辺を自ら定めて利用するようなら、他分野に対し実績として十分な説得材料になりそう。

          • by Anonymous Coward

            CLang でコンパイルしたカーネル楽しいかも。
            ベンチマーク見ると、最適化は gcc と似たり寄ったりみたいだけど。

          • by Anonymous Coward

            それってclang側が頑張ってgcc相当の機能を実装したからでは。

            そんなこたない [blogspot.com]

            • by Anonymous Coward on 2022年09月22日 23時00分 (#4331259)

              #4331028です。知らなかったので勉強になりました。
              ちょっと古い記事だったので、VLAISをキーワードにその後どうなったのかググってみた。

              AndroidがClangだから、Karnelもgccを使わないで済むよう取り組んでいるという記事
              https://lwn.net/Articles/734071/ [lwn.net]

              その結果、Karnel4.20でVLA自体を使用しないよう書き換え完了したという記事
              https://linux.slashdot.org/story/18/10/29/1935253/the-linux-kernel-is-... [slashdot.org]

              4年も前の話なのか。アンテナ低すぎだろ、俺。

            • by Anonymous Coward

              gccの拡張機能はかなりの数がclangに取り込まれているのは事実と思うが、僅かな例外があったとして「そんなこたない」と否定できるもんかな?

              • by Anonymous Coward
                「そんなこたない」というのはC99規格標準の可変長配列のことですよ。
                C11規格ではオプションに後退してるけど、大きな違いだと思う。
              • by Anonymous Coward

                「そんなこたない」というのはC99規格標準の可変長配列のことですよ。

                可変長配列はclangで普通に使えますよ。VLAISを誤解されてるのでは。

              • by Anonymous Coward

                「そんなこたない」というのはC99規格標準の可変長配列のことですよ。


                void hoge(int size)
                {
                        int array[size];
                }

                ↑こーゆーのなら結構前のclangからサポートしてますね。
                https://godbolt.org/z/5d6Ed3861 [godbolt.org]

              • by Anonymous Coward

                C11規格で後退したのは、マイコンとかではコンパイラの実装や利用が厳しいことを考慮したのかな。
                PIC16Fとか、ただの配列ですら実用的とはいいがたいコードを吐く。

    • by Anonymous Coward

      Linus「こんな事もあろうかとLinuxコンパイル用のRustを自ら作っておいた」

      • by Anonymous Coward

        たぶんこういうことだと思う。6.1には、対応する特定ブランチのRustが付くんだろう。

        • by Anonymous Coward

          Linuxを一からビルドしようとすると、まずRustのコンパイラをビルドするところから始めるようになるのでは

    • by Anonymous Coward

      気にする人は古いカーネルを使うから問題ないんじゃない?元々バグがゼロになることはあり得ない分野だし。

    • by Anonymous Coward

      それを言うなら、Cも発展途上。
      linuxカーネルで長年使われてきたC89と最新の最終草案が出たばかりのC23では別物だよ。

      • by Anonymous Coward

        30年以上前から標準規格が度々更新されてるC言語と現状標準規格に類するものが存在しないRustはぜんぜん違うよアホか

        • by Anonymous Coward

          Linuxカーネルが依存してるGNU89って標準規格あんの?

          • by Anonymous Coward

            C23を例に挙げてCも発展途上だという話となんか関係ある話かな? >GNU89

          • by Anonymous Coward

            とっくにC11だが

    • by Anonymous Coward

      なんの言語でも発展途上の時代はあったでしょ
      そんなこと言ってたら一生古いものを使い続けなきゃいけなくなる
      継ぎはぎと1から新しく作るのでは全然違うし

      • by Anonymous Coward

        時代が違う。今、Linux全部を発展途上なクオリティに下げると世界がひっくり返るぞ。
        Rustを牛耳ってる面子を囲い込んだらLinuxに多大な影響を与えられる、というのは影響力がお買い得に過ぎる。

        他の枝でも出てるようにLinux開発メンバーがRustをフォークするか、同等のクオリティ・信頼度になるよう支えるか。
        あるいは、Rustの影響が無いCのままのLinuxがフォークされるか。

        • by Anonymous Coward

          Rustを牛耳ってる面子を囲い込んだらLinuxに多大な影響を与えられる、というのは影響力がお買い得に過ぎる。

          Linux に多大な影響を与える他の方法よりも
          Rustを牛耳ってる面子 [rust-lang.org]を囲い込む方が難しいんとちゃうやろか。

          • by Anonymous Coward

            > Rustを牛耳ってる面子
             
            日本にはもうTOYOTAしか残ってないという残酷な事実 (´・ω・`)

    • by Anonymous Coward

      Javaがグズグズ規格の話し合いしてる間にMSの実装が規格みたいな勢いのC#が抜けていきましたね

    • by Anonymous Coward

      国家が採用するにはJISやISOで規格化されることが重要とか言われたのを真に受けて頑張ってJIS化したのに、JISでもISOでもECMAでも規格化されていないPythonを採用されるという梯子外しをくらったRubyとかいう言語がありましてね

  • by Anonymous Coward on 2022年09月22日 15時56分 (#4330959)

    という感想

    ここに返信
    • by Anonymous Coward on 2022年09月22日 22時42分 (#4331251)

      https://lwn.net/Articles/249460/ [lwn.net]
      過去にリーナスがこう言っている。

      even if the choice of C were to do *nothing* but keep the C++ programmers out, that in itself would be a huge reason to use C.
      C++プログラマーを排除することができるというだけでCを選択する意味はある。

      I've come to the conclusion that any programmer that would prefer the project to be in C++ over C is likely a programmer that I really *would* prefer to piss off

      プロジェクトにおいてCではなくC++を好むようなやつは私が追い出したいクソ野郎だという結論に達した。

    • by Anonymous Coward

      C++は嫌われているとは思うがBeOSには使われてたし蓼食う虫も好き好きとも言うし

      • by Anonymous Coward

        1990年代はVisual C++ / C++ Builderで輝いていたのに

        • by Anonymous Coward

          それを言うなら、今はQtだねえ。よく見かける。鈍く輝いてる。

          • by Anonymous Coward

            QtはQtの世界に引き篭もれちゃうので、C++でコード書いているという感覚をあまり感じられないんですよねー。

    • by Anonymous Coward

      大手各社のディスプレイドライバが、フットプリントGB超えの肥大っぷり。
      C++を認めるということは、現状、ああいう世界になるということ。

      C++は貪欲だ。Rustの知見がC++に流れ込んでくることに、正直期待している。

      • by Anonymous Coward

        フットプリントGB超えの肥大っぷり。

        開発期間(開発速度)とのトレードオフなんでしょうね。
        適材適所ということで、Linuxカーネルには向かないんじゃないの。

    • by Anonymous Coward

      リーナスがC++が嫌いと公言してるし
      結構前の発言だから意見が変わってる可能性もあるけど
      この感じだとまだ嫌ってるみたいだな

      • だってC++の嫌ってる部分が何も変わってないし

typodupeerror

アレゲはアレゲ以上のなにものでもなさげ -- アレゲ研究家

読み込み中...