Runtime-Extensible Parsers
| Paper | Runtime-Extensible Parsers (PDF) |
| Konferenz | CIDR 2025 |
| Blogbeitrag | Blogbeitrag auf duckdb.org |
Zusammenfassung
Trotz ihrer zentralen Rolle bei der Anfrageverarbeitung haben Parser im Datenmanagement kaum Beachtung gefunden. Moderne Systeme begnügen sich mit uralten Parser-Generatoren. Diese erzeugen monolithische, unflexible und unnachsichtige Parser, die Innovationen in Anfragesprachen behindern und Nutzerinnen und Nutzer frustrieren. Wir argumentieren, dass Parser mit modernen Abstraktionen wie Parsing Expression Grammars (PEG) neu geschrieben werden sollten: Sie erlauben dynamische Änderungen der akzeptierten Anfragesyntax und eine bessere Fehlerbehandlung. In diesem Beitrag diskutieren wir, wie sich Parser mit PEG neu entwerfen lassen, und prüfen unsere Empfehlungen experimentell hinsichtlich Wirksamkeit und Effizienz.
Implementierung
DuckDBs Autovervollständigung ist mit einem PEG-basierten Parser umgesetzt. DuckDB v1.5 liefert einen experimentellen Parser.