Julia 1.13、フルGCが35msから2msに——イメージオブジェクトのマークをスキップ

Julia 1.13 Highlights

Julia 1.13、フルGCが35msから2msに——イメージオブジェクトのマークをスキップ

Julia 1.13がリリースされた。最大の目玉はガベージコレクションの高速化で、システムイメージやパッケージイメージ内のオブジェクトを恒久的にマーク済みとして扱い、マークフェーズで走査しないようにした。これによりフルGCのコストが実際に生成したヒープサイズに比例するようになり、ベアセッションでは35msから2msへと大幅に短縮。さらにパッケージのプリコンパイル時間が約30%削減、起動も約20%高速化した。REPLにはシンタックスハイライトとfzf風の履歴検索が追加され、Windowsでのブラケットペーストにも対応。ハッシュ関数はRapidhashNanoに置き換わり、長い文字列のハッシュが約5倍速くなっている。

フルコレクションのコストは、ロードされたコードの量ではなく、プログラムが実際に作成したヒープのサイズに比例するようになりました。
  1. zuluonezero

    この3年間、私は多くの異なるプログラミング言語とスタイルを集中的に調査してきた(最後に数えたときは約38種類)。週末に、どれが一番好きか振り返ってみた。機能や性能、ツールセットのためではなく、ただどれが「しっくりくる」かという観点で。Juliaが一番、もっと遊んでみたいと思える言語だった。もっともらしい理由を挙げられたらいいのだけど、実際はただの感覚だ。知的設計、パワー、熱狂的な馬鹿げた主張のなさ、そして心地よいインターフェースの絶妙なバランス。世界の気まぐれな巡り合わせでその感覚が裏付けられ、今朝このリリースメッセージを見られたのは本当に嬉しい。Juliaチームに感謝。

  2. eigenspace

    リリースサイクルの巡り合わせで、主要な新機能のほとんどはv1.14に先送りされ、今回はどちらかというと反復的なリリースで、さまざまな高速化、バグ潰し、全体的な磨き上げに焦点を当てている。

    それでも、GCの高速化、起動レイテンシの低減、割り込み処理の改善、新しいREPL機能、パッケージ管理の高速化はどれも素晴らしい。特に嬉しいのは、未登録のパッケージを`add`するときにパッケージの`[sources]`セクションが再帰的に適用されるようになったことだ。

  3. notthemessiah

    Juliaは大好きだけど、今エコシステムに2つ不満がある。

    インタラクティブプログラミングは、ObservableのようなリアクティブノートブックであるPlutoと、プロットライブラリMakieの作者によるJupyterのようなより命令型のノートブックであるBonitoの間で分裂しているように見える。

    もう一つの不満は、パッケージエコシステムがGitHubとGitLabを唯一の選択肢として非常に密接に結びついていることだ。MicrosoftがGitHubの信頼性を殺している時代に、多くの新しいプロジェクトはTangled(AT Protocolネットワーク上)やForgejo(Codebergが旗艦)に移行しているが、JuliaHubにはそれらのパッケージサポートがない。

  4. vitorsr

    Juliaにずっと求めていたのは優れた開発体験だけだったが、どうやらそこにはなかなか到達しなかったようだ。

    言語としてはずっと前に到達していた(1.6 LTSシリーズが思い浮かぶ)。

    それ以来状況は大きく変わり、今では「人間工学」はエージェント駆動開発のために残念ながら優先度が下がっている。

    それでも、皆Goの本に学ぶべきだと思う。本当に、言語設計には今やデフォルトの開発ワークフローを含めるべきだ。

  5. jan_m_savage

    Juliaはもっと採用されていただろう:

    --> 初心者向けだけでなく、中級者・上級者向けの適切な学習リソース。現時点では、Pythonの世界で見つかるものと比べてリソースは比較的乏しい。

    --> 専用のIDE。Pythonにはいくつかある。

    それ以外は、クリーンで素晴らしい言語で、Pythonより速くエレガントだ。Pythonの影に留まってしまったのは残念だ。

この日のほかの記事

2026-09-13