Read OSS

microsoft/Typescript

6 articles

前提知識

01

3万フィート上空から見るTypeScriptコンパイラ:アーキテクチャとコードベースの全体像

TypeScript 6.0 コンパイラリポジトリの高レベルツアー — ディレクトリ構造、5フェーズのパイプライン、コアデータ構造、レイヤードアーキテクチャ、ビルドツールを解説します。

02

ソーステキストからASTへ:スキャナー、パーサー、そしてノードシステム

TypeScriptのフロントエンドを深掘りする:ステートフルなScanner、再帰下降Parser、SyntaxKindによる分類システム、そしてNodeの型階層。

03

バインダー:シンボルテーブルと制御フローグラフの構築

TypeScript のバインダーが宣言から Symbol を生成し、階層的なシンボルテーブルを構築し、型の絞り込みのために FlowNode グラフを構築する仕組みを解説します。

04

型チェッカー:54,000行の型理論、実装の全貌

TypeScript の型チェッカーの内側へ — オンデマンドアーキテクチャ、Type 階層、代入可能性アルゴリズム、型推論、制御フロー narrowing、そして Program オーケストレーターまで。

05

Emitter パイプライン:変換処理、コード生成、宣言ファイル

TypeScript の emitter が、コードの段階的な変換・宣言ファイルの生成・emit ヘルパー・ソースマップ出力のために、AST トランスフォーマーのチェーンをどのように組み立てて動かすか。

06

Language Service と tsserver:IDE 体験を支える仕組み

TypeScript の Language Service がエディタ機能のためにコンパイラをラップする仕組みと、tsserver が VS Code などのエディタ向けに JSON プロトコルでこれらの機能を公開する方法について解説します。