One cool thing about working on a web framework is that the tools you use to build a feature might eventually adopt the feature itself. 5.5 years later, in this case.
A decade ago, after struggling on a hard problem in React Fiber, I spent several days designing and iterating on a fuzz tester that eventually uncovered a bunch of subtle cases that helped me converge on a solution.
Today, a fuzz tester simply appeared in my codebase. Poof.
I just discovered that v8's JIT doesn't inline Atomics. It uses the generic implementation every time.
a[1] → 2 instructions
Atomics.load(a, i) → ~130 (!!!)
Brutal 😫
Anyone who can help me get this fixed? Happy (to have an agent) send a patch!
You Can See Everything:
The hype is justified. Just go see it fresh, don’t read any reviews that might spoil the experience.
All I’ll say is I felt every minute of its 3 hour runtime, but when it was over I wished it would keep going.
If your app is mostly static, but also mixes in user specific UI (e.g. a shopping cart), Next.js now has a really great solution for mixing both on the same page without surprise server costs. nextjs.org/docs/app/guide…