なぜTypeScriptは成功しているのか。作者ヘイルスバーグ氏が語る7つの教訓
TypeScriptの言語設計を行い、現在も開発をリードしているアンダース・ヘルスバーグ(Anders Hejlsberg)氏は、1983年に発売され大きな人気を得たプログラミング言語であるTurbo Pascalの作者であり、その後もDelphi、C#などの優れたプログラミング言語の開発に携わってきたことで知られています。
そのヘイルスバーグ氏が1月27日付で公開されたGitHubのブログ記事「7 learnings from Anders Hejlsberg: The architect behind C# and TypeScript」で、同氏が長年の言語設計から得た7つの学びと、それが現在のTypeScriptにどう生かされているのかが紹介されています。
Why did TypeScript work when so many languages didn't?
— GitHub (@github) January 29, 2026
Anders Hejlsberg, the mind behind Turbo Pascal, Delphi, C#, and TypeScript shares his thoughts and learnings. https://t.co/gQBKegJOsx
7つの教訓とはどういうものか、概要を紹介しましょう。
TypeScriptにも反映されているTurbo Pascalのインパクト
ヘルスバーグ氏は、コードを入力したらすぐにそれを実行したい、という要求に基づいて、コードとそれを実行することによるフィードバックループを短縮することから生まれたのがTurbo Pascalのインパクトだったと振り返ります。
そしてその考え方はTypeScriptにも反映されているとしました。
The same idea shows up decades later in TypeScript, although in a different form. The language itself is only part of the story. Much of TypeScript’s value comes from its tooling: incremental checking, fast partial results, and language services that respond quickly even on large codebases.
同じ考えは数十年後に登場したTypeScriptにも、形は異なりますが当てはまります。言語自体はストーリーの一部に過ぎず、TypeScriptの価値の多くはツールによるものです。すなわち、インクリメンタルチェック、迅速な部分結果、大規模なコードベースでも素早く応答するランゲージサービスなどです。
ヘルスバーグ氏がDelphiの開発チームを率いるようになり、システム開発において個人的な好みを手放すことを学んだと言います。
それは、チームにおいてシステムがスケールするためには、個人の好みではなく成果を共有できるようにすること、そして多くの人が理解し、維持し、進化できるコードにすることだとしました。
Languages do not succeed because they are perfectly designed. They succeed because they accommodate the way teams actually work.
言語が成功するのは、完璧に設計されているからではありません。チームの実際の働き方に適応するから、言語が成功するのです。
なぜJavaScriptを拡張することを選んだのか
なぜTypeScriptはJavaScriptを置き換えるのではなく、拡張することを選んだのか。その理由は、TypeScriptが登場した2012年の時点で、新しい言語を作ってすでに広く普及しているJavaScriptのエコシステムを使わないことを求めることは現実的ではなかったとヘイルスバーグ氏。
Improvements that respect existing workflows tend to spread while improvements that require a wholesale replacement rarely do. In practice, meaningful progress often comes from making the systems you already depend on more capable instead of trying to start over.
全面的な置き換えを必要とする改善はほとんど広がらない一方で、既存のワークフローを尊重した改善は普及しやすいものです。実際には、意味のある進歩は、既に依存しているシステムを一からやり直すのではなく、より高性能にすることから生まれることが多いのです。
TypeScriptがオープンソースで開発されている利点
TypeScriptの開発がオープンソースで行われたことの利点についても、ヘイルスバーグ氏は説明しています。
その利点とは、ユーザーからはTypeScriptの開発における意思決定の過程が可視化されたことで理解が促進されること。と同時に、TypeScriptの開発チームにおいても優先順位付けにおいて推測ではなくユーザーの関心事を直接知ることができることだとしました。
The most effective open source projects do more than share code. They make decision-making visible so contributors and users can understand how priorities are set, and why tradeoffs are made.
最も効果的なオープンソースプロジェクトとは、コードを共有するだけではありません。意思決定を可視化し、コントリビュータやユーザーが、優先順位の設定方法やトレードオフの理由を理解できるようにするのです。
新コンパイラの実装にGo言語を選んだ理由
TypeScriptはこれまでコンパイラ(トランスパイラ)自身もTypeScriptで記述されてきました。しかし将来のバージョン(TypeScript 7)では、より高速なコンパイラの実装を目的としてGo言語に移植されることが発表されています。
Go言語が選択された理由について、ヘイルスバーグ氏は次のように説明しました。
The new compiler needed to behave exactly like the old one, including quirks and edge cases. Rust, despite its popularity, would have required significant redesign due to ownership constraints and pervasive cyclic data structures. Go’s garbage collection and structural similarity made it possible to preserve behavior while unlocking performance and concurrency.
新しいコンパイラは、クセやエッジケースを含めて古いものとまったく同じ動作をする必要がありました。Rustは人気があったものの、所有権の制約や広範な循環データ構造のため、大幅な再設計が必要なようでした。一方、Goのガベージコレクションや構造的類似性は、動作を保持しつつパフォーマンスと同時実行性を解放することが可能となりました。
参考:マイクロソフト、TypeScriptのコンパイラなどをGo言語に移植することで10倍の処理速度に
AI時代における言語とツールの価値
これまで、プログラミング言語と関連ツールが提供する価値は、人間プログラマの生産性を高めることにありました。
しかしAIが多くのコードを書く時代には、効率的なレビューや検証のための仕組みを提供することが重視されるようになるとヘイルスバーグ氏は語ります。
For developers, this shifts where attention should go. The most valuable tools in an AI-assisted workflow aren’t the ones that generate the most code, but the ones that constrain it correctly. Strong type systems, reliable refactoring tools, and accurate semantic models become essential guardrails. They provide the structure that allows AI output to be reviewed, validated, and corrected efficiently instead of trusted blindly.
開発者にとっては、注意を向けるべき場所が変わります。AIアシストによるワークフローで最も価値のあるツールとは、最も多くのコードを生成するものではなく、正しく制約するツールです。強力な型システム、信頼できるリファクタリングツール、正確な意味モデルは不可欠なガードレールとなります。AIの出力を盲目的に信用するのではなく、効率的にレビュー・検証・修正される仕組みを提供します。
詳細はぜひ原文「7 learnings from Anders Hejlsberg: The architect behind C# and TypeScript」をご覧ください。
