~/talk

Lrparsing, when regular expressions aren't enough

Talkat PyCon Australia 2015 · 2015-07-31..08-04· [python]
links:none on file
slides:none on file

LRparsing is a pure‑Python lexer plus parser generator that claims to be a Flex and Bison equivalent while remaining Pythonic, fast and well documented. It produces concrete parse trees, supports tokenization, priorities and associativity to remove ambiguities, can emit compiled Python code, and runs real test suites (SQLite example) successfully. Recent work adds IfExp(condition, 1, 2)‑style AST support using Python AST node classes so parsers can yield standard ASTs rather than raw tuples. Error messages and performance are practical.

AI-written summary · about

  1. 0:00Introduction
  2. 0:35Disclaimer
  3. 1:02Pause
  4. 1:21The problem with parsing
  5. 3:18Breaking it down
  6. 3:38Nested list
  7. 4:02Mathematical expressions
  8. 5:49Data structure
  9. 6:23conventions of maths
  10. 6:44regular expressions
  11. 7:49grammar
  12. 11:37special cases
  13. 13:07ambiguous grammar
  14. 14:32Parse tree
  15. 15:14Priority list
  16. 20:04Final pathtree
  17. 21:13Optional extras
  18. 24:00Optional symbols
  19. 24:48tokens
  20. 27:05error messages
  21. 27:40lrparsing
  22. 28:02lrparsing runtime
  23. 28:48lrparsing book
  24. 29:55Conclusion
  25. 30:50Questions
~/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.