現在開発中のPython 3.15で、Windows x86-64向けCPythonインタプリタが大幅に高速化する可能性が見えてきました。鍵となるのは、MSVC(Visual Studio 2026)に新しく導入された tail-call(末尾呼び出し)最適化を強制できる仕組みです。CPythonコア開発者のKen Jin 氏による最新の検証では、Windows版CPythonが平均15〜16%、ケースによっては40%近い高速化を達成したとのこと。これはPythonの歴史の中でもかなり大きな改善といえます。なぜ tail-call で速くなるのか?従来のCPythonインタプリタは巨大なswitch-caseループ(約12、000行)で構成されており、コンパイラが最適化しづらい構造でした。特に問題だったのが インライン展開がほぼ行われないことです。小さな関数でも「巨大な関数にさらにコードを足すのは危険」と判断され、最適化が抑制されてしまっていたのです。これに対し、Tail-callインタープリターは次のような特徴を持ちます。各バイトコード処理を関数として分離次の命令へはtail-call(スタックを増やさない関数呼び出し)関数が分割されることでコンパイラの最適化が正常に働く結果としてインライン展開が復活し、処理が高速化MSVCの新しい[[msvc::musttail]] 属性により、tail-call が確実に適用されるようになったことが今回のブレイクスルーにつながっています。実験のベンチマーク結果Ken Jin 氏の検証では、以下のような改善が確認されています:spectralnorm:1.48×nbody:1.35×Django template:1.18×xDSL:1.14×特に小さなループを大量に回す処理で効果が大きく、Python の日常的なスクリプトでも体感できる可能性があります。まだ実験的だが、未来は明るいMSVCのtail-call機能はまだ実験的で、将来変更される可能性があります。しかし、PythonコアチームはすでにWindows版CPython 3.15での採用を視野に入れており、macOS版でも同様のtail-callインタープリターが導入されつつあります。現時点で試すには、Visual Studio 2026を使ってCPythonをソースからビルドする必要がありますが、将来的には公式バイナリにも組み込まれる見込みです。Hacker Newsでもこの話題に関する議論が行われており、Ken Jin氏本人が登場して質問に答えています。Pythonの高速化に興味のある方は参照してみてはいかがでしょうか。