12 i 14 marca, po długiej przerwie, wydane zostały wersje 1.10.0 i 1.10.1 biblioteki cpp-peglib, implementującej PEG (gramatyka rozpoznająca wyrażenia).
Biblioteka wspiera składnię szczegółowo opisaną przez Briana Forda na stronie 2 dokumentu „Parsing Expression Grammars: A Recognition-Based Syntactic Foundation”, z wieloma dodatkowymi usprawnieniami.
W przeciwieństwie do takich projektów jak PEGTL, Lexy i wielu innych, cpp-peglib pozwala na definiowanie wyrażenia PEG w czasie wykonania.
Biblioteka napisana jest w języku C++ (standard C++17, header-only) i jest udostępniana na licencji MIT.
Zmiany:
- dodano możliwość przetwarzania danych predykatów;
- dodano wsparcie dla gramatyk z lewą rekursją;
- poprawiono wydajność;
- naprawiono błąd dotyczący kolejności parametrów optymalizatora AST.
Źródło: linux.org.ru
