Time flies like an arrow; Fruit flies like a banana: Parsers for Great Good
summary
Claim: human sentence parsing maps to programming-language parsing, demonstrated by building a tokenizer, a top-down recursive descent parser and a bottom-up shift-reduce parser, and by showing how a grammar file becomes a generated parser (RACC/Bison) from a real Rails parser.y. Examples include a working arithmetic AST, the AB balanced example that proves context-free, and a note that real servers (Jetty) used parsers and suffered a parsing-related vuln.
AI-written summary · about
chapters (11)
- 0:00Introduction to parsing
- 2:16Parsing human language
- 5:12Ambiguity and grammar rules
- 7:50Computer language parsing
- 10:45Building a simple lexer
- 12:39Top-down parsing
- 17:55Bottom-up parsing
- 21:54Parser generators
- 23:25When to use a parser
- 25:25Language hierarchies
- 29:32Practical benefits and resources
related talks
32mTime flies like an arrow; Fruit flies like a banana: Parsers for Great Good
43mGrammars, Parsers, and Interpreters, In Ruby
32mParsing Ruby
46mGrammar a BNF like Ruby DSL Parsing
52mTreetop: Syntactic Analysis with Ruby
38mParsing Expressions in Ruby
27mGenerate Parsers! Prevent Exploits!
24mOne machine please, make it Turing
