Parsergenerator Bison in Version 3.5 erschienen
Unter den Neuerungen befinden sich ein verbesserter Umgang mit Integraltypen, ein eindeutigerer Einsatz von String-Literalen sowie ein D-Backend.
- Alexander Neumann
Der Open-Source-Parsergenerator Bison ist in Version 3.5 erschienen. Überarbeitet wurde im neuen Release die Verwendung von Integraltypen sowohl im Generator als auch in den generierten Parsern. Als Folge davon haben kleine Parser einen offenbar geringeren Platzbedarf, und sehr große Automatisierungen sind nun mit dem Standard-Backend (yacc.c) möglich. Wer an kleineren Parsern interessiert ist, dem wird auch api.token.raw empfohlen.
Neu ist des Weiteren eine Lookahead Correction (LAC) für C++, und der Einsatz von String-Literalen wurde geklärt. So sollen sie zum einen genutzt werden, um das Schlüsselwort-Matching nicht mehr im Scanner implementieren zu müssen, und zum anderen, um Fehlermeldungen zu verbessern. Meistens lässt sich wohl beides gleichzeitig erreichen. In dem Kontext sollte eine neue Warnung (-Wdangling-alias) helfen, die Verwendung von Aliasen nur für Fehlermeldungen zu erzwingen.
Der Anfang fĂĽr D ist gemacht
Bison ist ein Parsergenerator aus dem GNU-Projekt, der eine annotierte kontextfreie Grammatik in einen deterministischen LR- oder verallgemeinerten LR-(GLR-)Parser unter Verwendung von LALR-Parsertabellen umwandelt. Das Werkzeug ist aufwärtskompatibel mit Yacc (yet another compiler compiler). Das bedeutet, dass alle richtig geschriebenen Yacc-Grammatiken mit Bison arbeiten, ohne dass sich etwas ändert. Jeder, der mit Yacc vertraut ist, sollte in der Lage sein, Bison zu nutzen.
Das Tool selbst lässt sich in Verbindung mit C-, C++- oder Java-Code nutzen. Ein experimentelles Backend für die Programmiersprache D ist schließlich in Version 3.5 hinzugefügt worden. Hierfür sucht man nun nach Anwendern. Mehr zu den Neuerungen erfährt man in der Ankündigung der Entwickler. (ane)