Mini-rust in Rust 009: Handling parsing errors
December 27, 2024 [Programming, Programming Languages, Rust, Tech, Videos] #mini-rust
mini-rust (23 part Series)
Mini-rust in Rust 001: Lexing an int
Mini-rust in Rust 002: Errors while lexing
Mini-rust in Rust 003: Much prettier errors
Mini-rust in Rust 004: Refactoring our lexer
Mini-rust in Rust 005: Making our lexer an iterator
Mini-rust in Rust 006: Parsing an operation
Mini-rust in Rust 007: Evaluating an operation
Mini-rust in Rust 008: Refactoring our parser
Mini-rust in Rust 009: Handling parsing errors
Mini-rust in Rust 010: Lexing an assignment
Mini-rust in Rust 011: Parsing an assignment plus expression
Mini-rust in Rust 012: Parsing with backtracking
Mini-rust in Rust 013: Fixing a bug in our lexer
Mini-rust in Rust 014: Evaluating an assignment
Mini-rust in Rust 015: Parsing a typed assignment
Mini-rust in Rust 016: Tidying our parser
Mini-rust in Rust 017: Handling float literals
Mini-rust in Rust 018: Type checking, the happy path
Mini-rust in Rust 019: Type checking an actual type error
Mini-rust in Rust 020: Gaps in our type checker
Mini-rust in Rust 021: Including type information in our syntax tree
Mini-rust in Rust 022: Stop lying about types in errors
Mini-rust in Rust 023: Refactor to share structure of the syntax tree
Mini-rust in Rust 001: Lexing an int
Mini-rust in Rust 002: Errors while lexing
Mini-rust in Rust 003: Much prettier errors
Mini-rust in Rust 004: Refactoring our lexer
Mini-rust in Rust 005: Making our lexer an iterator
Mini-rust in Rust 006: Parsing an operation
Mini-rust in Rust 007: Evaluating an operation
Mini-rust in Rust 008: Refactoring our parser
Mini-rust in Rust 009: Handling parsing errors
Mini-rust in Rust 010: Lexing an assignment
Mini-rust in Rust 011: Parsing an assignment plus expression
Mini-rust in Rust 012: Parsing with backtracking
Mini-rust in Rust 013: Fixing a bug in our lexer
Mini-rust in Rust 014: Evaluating an assignment
Mini-rust in Rust 015: Parsing a typed assignment
Mini-rust in Rust 016: Tidying our parser
Mini-rust in Rust 017: Handling float literals
Mini-rust in Rust 018: Type checking, the happy path
Mini-rust in Rust 019: Type checking an actual type error
Mini-rust in Rust 020: Gaps in our type checker
Mini-rust in Rust 021: Including type information in our syntax tree
Mini-rust in Rust 022: Stop lying about types in errors
Mini-rust in Rust 023: Refactor to share structure of the syntax tree
We promised ourselves we'd make sure error messages were good before it got too tricky to do it right, so now we have to bite the bullet and make our parsing errors nicer.
You can find the source code at codeberg.org/andybalaam/milk and more of my stuff at artificialworlds.net