Reading the Spec
summary
Live coding maps spec text to concrete behavior: the spec uses completion records to model exceptions, introduces question-mark/ bang shorthands for abrupt returns, and defines abstract ops like ToObject and HasOwnProperty that explain why Array.prototype.map throws on undefined/null, preserves sparse holes with the has check, and constructs results via create array from list. The talk shows subclassing pitfalls via array species, links to es-abstract polyfills and engine262, and outlines TC39 stage requirements.
AI-written summary · about
chapters (11)
- 0:00Introduction and speakers
- 1:05Personal journeys into specs
- 10:30Spec algorithm conventions
- 13:38Demo: Array.prototype.map
- 21:45Species protocol and subclasses
- 24:51Sparse arrays and map behavior
- 33:29TC39 proposal stages
- 40:55Inactive proposals and revival
- 44:46Standard library growth
- 50:25Object.entries deep dive
- 1:03:02Learning from the spec
related talks
01h 13mComprehending standards notation for JS
22mES2019 Features: What Even Are They?
32mBreak all the rules
06mJavaScript: The Fairly Odd Parts
11mUnderstanding the differences is accepting
55mJavaScript the Grumpy Parts
30m"JavaScript, the Real Bad Parts"
11mWhat's cooking for JavaScript: a look at current TC39 proposals
