Bison (program)
Autor | The GNU Project |
---|---|
Pierwsze wydanie | 4 lipca 2000 |
Aktualna wersja stabilna | 3.8.2 (25 września 2021) [±] |
Rodzaj | Generator parserów |
Licencja | GNU GPL |
Strona internetowa |
Bison – generator parserów utworzony w ramach projektu GNU. Jest w dużej mierze kompatybilny z programem Yacc[1], oferując w stosunku do niego kilka udoskonaleń. Zazwyczaj używany jest razem z programem flex, choć może korzystać z leksera napisanego ręcznie lub wygenerowanego przez inne narzędzie.
Program Bison przyjmuje jako wejście plik tekstowy zawierający gramatykę bezkontekstową LALR oraz fragmenty kodu w języku C, opisujące jak analizator składniowy ma przetwarzać dany język. Wynikiem działania programu jest plik źródłowy w języku C, zawierający podprogram parsera, którą można wykorzystać w tworzonej aplikacji.
Bison jest w stanie generować parsery GLR, radzące sobie z niejednoznacznymi gramatykami. Ponadto Bison może również współpracować z językami C++ i Java.