yacc
Материал из Википедии — свободной энциклопедии
yacc — компьютерная программа, служащая стандартным генератором синтаксических анализаторов (парсеров) в Unix-системах. Название является сокращением от «Yet Another Compiler Compiler» («всего лишь ещё один генератор компиляторов»). Yacc генерирует парсер на основе аналитической грамматики, описанной в нотации BNF. На выходе yacc выдаётся код парсера на языке программирования Си.
Yacc был разработан Stephen C. Johnson в AT&T для операционной системы Unix. Позже были написаны совместимые версии программы, такие как Berkeley Yacc, GNU bison, MKS yacc и Abraxas yacc (обновлённый вариант AT&T-версии с открытым исходным кодом также вошёл в проект OpenSolaris от Sun). Каждый вариант предлагал незначительные улучшения и дополнительные возможности по сравнению с оригиналом, но концепция осталась той же. Yacc также был переписан на других языках, включая Ratfor, EFL, ML, Ada, Java, C# и Limbo.
Поскольку парсер, генерируемый с помощью yacc, требует использования лексического анализатора, то часто он используется совместно с генератором лексических анализаторов, в большинстве случаев это lex либо flex. Стандарт IEEE POSIX P1003.2 определяет как функциональность так и требования для lex и yacc.
[править] См. также
- lex — лексический анализатор, часто использующийся с yacc
- GNU bison — GNU-версия yacc
- Gardens Point Parser Generator (gppg) - yacc, генерирующий код на языке C#
- Форма Бэкуса — Наура — синтаксис, используемый для описания контекстно-свободных грамматик, то есть формальный способ описания языков
Это незавершённая статья о компьютерном программном обеспечении. Вы можете помочь проекту, исправив и дополнив её. |