~/talk

Passing Strings Using (In)finite-State Machines and Prepack

TalkinRussianat OdessaJS 2018 · on Sunday, 2018-07-08· [javascript, frontend-architecture]
slides:none on file

A small CSS parser implemented as a finite-state machine that tokenizes input, builds an AST, validates syntax, highlights errors, and visualizes FSM states in the browser. The implementation is optimized for frontend bundling using Prepack (ahead-of-time simplification) to reduce the source from ~20 KB to an optimized bundle of about 1 KB; it demonstrates parsing, an arrow-to-function transform, and visualization, though no head-to-head benchmarks versus other parsers are provided.

AI-written summary · about

  1. 0:00Introduction
  2. 1:50Parsing and why
  3. 3:32CSS parser problems
  4. 8:11AST role
  5. 15:24Goals for new solution
  6. 21:04Finite-state machines for CSS
  7. 27:16Prepack optimization scheme
  8. 29:51Debugging and visualization
  9. 30:37Results and alternatives
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.