Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Why go?
Search
konaito | FYBE
March 12, 2025
0
5
Why go?
konaito | FYBE
March 12, 2025
Tweet
Share
More Decks by konaito | FYBE
See All by konaito | FYBE
AI Voice Desktop Companion
konaito
0
0
龍鎖のオリ ―心の中の“こころ”―
konaito
0
3
The_Procrustean_Bed_Aphorisms_for_the_Nonsucker
konaito
0
4
AI時代のIP保護戦略:ミームによるアンチフラジャイル・ソリューション
konaito
0
3
The_Antifragile_Playbook
konaito
0
5
Fandom_Finance
konaito
0
5
Agent_Garden_The_AI_Economy_OS
konaito
0
27
Lean Uniting Proof and Code
konaito
0
4
チェンソーマンの第二期が見たい
konaito
0
23
Featured
See All Featured
A designer walks into a library…
pauljervisheath
210
24k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.1k
Discover your Explorer Soul
emna__ayadi
2
1.1k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
260
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
110
Game over? The fight for quality and originality in the time of robots
wayneb77
1
84
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
150
Joys of Absence: A Defence of Solitary Play
codingconduct
1
280
Technical Leadership for Architectural Decision Making
baasie
1
220
How GitHub (no longer) Works
holman
316
140k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
0
180
Transcript
Why Go? TypeScriptコンパイラ × Go 1
概要 プロジェクトの狙い TypeScriptコンパイラをGoで実装することで、ビルド速度の大幅な 高速化とメモリ消費の削減を実現する。 背景 従来のTypeScriptコンパイラはNode.js上で動作し、シングルスレッ ドのため性能に限界があった。 新たな実装では、Goの特徴を活かして大規模プロジェクトにも対応 可能な効率性を追求。 2
TypeScriptとGoの違い TypeScript(従来の実装) JavaScriptベースで実行環境はNode.js シングルスレッド実行のため並列処理が難しい Go(新実装) コンパイルされたネイティブバイナリとして動作 ゴルーチンを利用した高度な並行処理が可能 単一の実行ファイルにまとめることで配布が容易 3
なぜGoを選んだのか?(Why Go?)(1/2) 圧倒的な性能向上 ネイティブコードとして動作するため、従来の実装に比べて最大10倍 の高速化が期待できる。 効率的なメモリ管理 Goのガベージコレクションによる効率的なメモリ管理で、ビルド時 のメモリ消費を大幅に削減。 4
なぜGoを選んだのか?(Why Go?)(2/2) 開発効率と移植性 Goはシンプルな構文と優れたクロスコンパイル機能により、開発速 度が向上。 TypeScriptコンパイラの構造を保ちつつ、既存のコードベースとの互 換性を維持。 並行処理の強み ゴルーチンによる並列処理で、型チェックなどの重い処理を効率的に 分散実行。
5
期待される成果とメリット(1/2) ビルド時間の劇的短縮 巨大プロジェクトでのビルド待ち時間を大幅に削減し、開発効率を向 上。 エディタとの連携強化 リアルタイムでのエラー検出やリファクタリングが迅速に行えるよう に。 6
期待される成果とメリット(2/2) CI/CDやクラウド環境への最適化 メモリ消費の低減により、クラウド環境でのリソース効率が向上。 今後の発展可能性 新機能やAI支援ツールとの連携により、さらなる開発エクスペリエン スの革新が期待される。 7
まとめ & 今後の展望(1/2) 結論 TypeScriptコンパイラのGoへの移行は、性能とスケーラビリティの 大幅向上を実現するための戦略的な選択。 「Why Go?」の答えは、開発効率、並行処理、移植性、そして単一バ イナリの利便性に集約される。 8
まとめ & 今後の展望(2/2) 今後の展望 2025年末を目途に、新コンパイラ(TypeScript 7.0)の完成を計画 中。 従来の6.x系と並行して進化し、今後10年にわたりTypeScriptの強固 な基盤を築く。 9