4 ms·
I think the main issue with parsing is that you probably need to parse all JavaScript before you can start executing any of it. That might lead to a high delay
by sltkr 9y ago
I think the main issue with parsing is that you probably need to parse all JavaScript before you can start executing any of it. That might lead to a high delay before you can start running scripts.
Compiling and optimizing code can be slow, too, but JIT compilers don't optimize all code that's on a page. At least at first, the code gets interpreted, and only hot code paths are JIT compiled, probably in a background threads. That means that compiling/optimizing doesn't really add to the page load latency.
But I agree with you that this is a strange suggestion. If parsing is so slow, maybe browsers should be caching the parsed representation of javascript sources to speed up page loading, or even better: the bytecode/JIT-generated code.
- sjrd 9y ago> If parsing is so slow, maybe browsers should be caching the parsed representation of javascript sources to speed up page loading, or even better: the bytecode/JIT-generated code. This is addressed in the article: https://yoric.github.io/post/binary-ast-newsletter-1/#improving-caching https://yoric.github.io/post/binary-ast-newsletter-1/#improv...
- hashseed 9y agoChrome already caches compile result for previously visited pages to bypass the initial parsing/compiling.
- Yoric 9y agoSo does Firefox, btw. This is addressed here: https://yoric.github.io/post/binary-ast-newsletter-1/#improving-caching https://yoric.github.io/post/binary-ast-newsletter-1/#improv...