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
babel-registerを高速化した話
Search
Yosuke Furukawa
PRO
June 30, 2016
Programming
2
1.6k
babel-registerを高速化した話
#tng21 で発表した babel-register を高速化した話です。
Yosuke Furukawa
PRO
June 30, 2016
Tweet
Share
More Decks by Yosuke Furukawa
See All by Yosuke Furukawa
tc39 x jsconf.jp Panel Discussion 2024
yosuke_furukawa
PRO
0
130
Removing Corepack
yosuke_furukawa
PRO
9
1.2k
JavaScript Runtime とはなにか
yosuke_furukawa
PRO
15
2.4k
Strip Types と Storage
yosuke_furukawa
PRO
4
330
Module Harmony について
yosuke_furukawa
PRO
3
1.5k
LTのやり方
yosuke_furukawa
PRO
16
2.1k
AppRouter Panel Talk
yosuke_furukawa
PRO
3
690
Node.js v22 で変わること
yosuke_furukawa
PRO
13
5.2k
リアーキテクトと開発生産性について
yosuke_furukawa
PRO
25
9.5k
Other Decks in Programming
See All in Programming
Universal Linksの実装方法と陥りがちな罠
kaitokudou
1
220
Boost Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
820
qmuntal/stateless のススメ
sgash708
0
120
デプロイを任されたので、教わった通りにデプロイしたら障害になった件 ~俺のやらかしを越えてゆけ~
techouse
52
32k
Android 15 でアクションバー表示時にステータスバーが白くなってしまう問題
tonionagauzzi
0
140
詳細解説! ArrayListの仕組みと実装
yujisoftware
0
480
gopls を改造したら開発生産性が高まった
satorunooshie
8
240
レガシーな Android アプリのリアーキテクチャ戦略
oidy
1
170
アジャイルを支えるテストアーキテクチャ設計/Test Architecting for Agile
goyoki
7
2.8k
cXML という電子商取引の トランザクションを支える プロトコルと向きあっている話
phigasui
3
2.2k
RailsのPull requestsのレビューの時に私が考えていること
yahonda
5
1.7k
Content Security Policy入門 セキュリティ設定と 違反レポートのはじめ方 / Introduction to Content Security Policy Getting Started with Security Configuration and Violation Reporting
uskey512
1
420
Featured
See All Featured
Six Lessons from altMBA
skipperchong
26
3.5k
A Modern Web Designer's Workflow
chriscoyier
692
190k
Ruby is Unlike a Banana
tanoku
96
11k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.8k
A Philosophy of Restraint
colly
203
16k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
37
1.8k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
Building Flexible Design Systems
yeseniaperezcruz
327
38k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
3
370
Designing Experiences People Love
moore
138
23k
How to Ace a Technical Interview
jacobian
275
23k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
250
21k
Transcript
babel-registerΛߴ Խͨ͠ @yosuke_furukawa
Eater
Eater URL https://github.com/yosuke-furukawa/eater
- Eater features - Multi-process Easy Mock Happy Async
Eater ձࣾͰͬͯͯ·͊·͊ ͍͍ײ͡ʹͳͬͯΔɻ koichik͔ΒPRΒ͏ͷخ͍͠
babel-register
babel-register
But …. • Eater x babel ڥͩͱ • Eater ͕ͨ͘͞Μ
process ্͛ͯͦͷʹ babel ͷ transpile ͕Δ • babel-register ্ͷͨΊʹtranspileޙͷ ݁ՌΛΩϟογϡ͍ͯ͠Δ͕ɺ multiprocess Ͱಈ ͘͜ͱΛߟྀ͍ͯ͠ͳ͍
active-cache-babel-register
DEMO
Έ TUDBDIF CBCFMKTPO CBCFMSFHJTUFS
Έ (babel-register) CBCFMKTPO CBCFMSFHJTUFS babelࡁΈͷ݁ՌϝϞϦதʹ͓͍࣋ͬͯͯ ϓϩηε͕ऴΘͬͨΒ .babel.json ʹग़ྗ͢Δ
Έ (active-cache-babel-register) TUDBDIF CBCFMKTPO OEDBDIF CBCFM@BDUJWF BDUJWFDBDIFCBCFMSFHJTUFS 1st cache ͷ
babel.json ʹώοτ͠ ͳ͔ͬͨΒ 2nd cache Λݟʹߦ͘
Έ (active-cache-babel-register) TUDBDIF CBCFMKTPO OEDBDIF CBCFM@BDUJWF BDUJWFDBDIFCBCFMSFHJTUFS 2nd cache
multi-process ؒ ͰγΣΞՄೳͳܗࣜ
Έ (active-cache-babel-register) TUDBDIF CBCFMKTPO OEDBDIF CBCFM@BDUJWF BDUJWFDBDIFCBCFMSFHJTUFS ͞ΒʹઃఆϑΝΠϧͷมߋ༗ແ·Ͱ ݟΔͷͰɺ ແବͳ
require Λճආ
Happy Eater https://github.com/yosuke- furukawa/eater
with active-cache-babel- register https://github.com/yosuke- furukawa/active-cache- babel-register