ニュース
「TypeScript」がネイティブ移植で10倍の速さに
コンパイラー&ツールをJavaScriptからGoへ、「TypeScript 7」に期待
2025年3月12日 10:20
米Microsoftは3月11日(現地時間)、「TypeScript」の改善で大きな飛躍があったと発表した。「TypeScript」コンパイラーとツールを「Go」言語でネイティブ移植することにより、ビルド時間が10倍に高速化、これまでの10分の1の時間で終わるようになったという。メモリ使用量も大幅に削減される。
「TypeScript」は、Microsoftが主に開発・メンテナンスしているオープンソースのプログラミング言語。「JavaScript」に静的型付け機能などを追加したスーパーセットで、「JavaScript」が苦手としてきた大規模開発などの用途に適している。また、コードを「JavaScript」へトランスパイル(変換)して実行する仕組みになっているのも特徴。Webブラウザーや「Node.js」など、「JavaScript」をサポートする環境で広く利用できるのも魅力だ。
しかし、コードベースがあまりに巨大になってしまうと、トランスパイル実行のデメリットが目立つようになる。読み込みやチェック処理に時間がかかり、エディターの起動は遅く、変数名の変更や特定の関数への参照をリストアップしたり、コードベースをナビゲーションするといった操作に手軽に行えなくなってしまっていた。近年はAIによるコーディング支援なども普及しつつあるが、このままではそのポテンシャルを十分に生かせないだろう。
そこで開発チームは現在、「TypeScript」コンパイラー(tsc)と関連ツールを「Go」言語でネイティブ移植することに取り組んでいるという。このプロジェクトは「Corsa」というコードネームで呼ばれており、その成果は目をみはるほどだ。たとえば「Visual Studio Code」のコードベースを読み込む処理では、従来の「TypeScript」が約9.6秒を要するのに対し、新しいネイティブ言語サービスでは約1.2秒に短縮される。全体的なメモリ使用量も現在の実装の約半分になるが、まだ最適化は行われていないため、さらなる改善が期待できる。
開発チームによると、2025年半ばにはコマンドラインでタイプチェックが可能な「tsc」のネイティブ実装をプレビューできるようになり、年末にはプロジェクトビルドと言語サービスのための機能完全なソリューションを提供できるようになる見込み。プロジェクトは「GitHub」で「TypeScript 7」としてホストされており、ライセンスは従来通り「Apache-2.0」。興味があるなら、実際にコードを見たり、試すこともできる。
なお、「TypeScript」のバージョンは現在「5.8」で、まもなく「5.9」が登場する見込みだが、従来の「JavaScript」ベースの実装(TypeScript 6 JS、Stradaは「6.x」でも継続される。
ただし、ネイティブのコードベース(TypeScript 7 Native、Corsa)と整合させるために、いくつかの廃止予定と変更点が導入されるという。ネイティブのコードベースが現在の「TypeScript」の代わりとして十分使えるようになれば、「TypeScript 7.0」としてリリースされるとのこと。