Science Fair Project Encyclopedia
Yacc
Yacc is a piece of computer software that serves as the standard parser generator on Unix systems. The name is an acronym for "Yet Another Compiler Compiler." It generates a parser (the part of a compiler that tries to make sense of the input) based on a grammar written in BNF notation. Yacc generates the code for the parser in the C programming language.
Yacc was developed by Steven C. Johnson at AT&T for the Unix operating system. Later compatible programs were written, such as Berkeley Yacc, GNU bison, MKS yacc and Abraxas yacc. Each offer slight improvements and additional features over the original Yacc, but the concept has remained the same.
Since the parser generated by Yacc requires a lexical analyzer, it is often used in combination with a lexical analyzer generator, in most cases the Lex program. The IEEE POSIX P1003.2 standard defines the functionality and requirements to both Lex and Yacc.
See also
- GNU bison
- CodeWorker
- ANTLR
- JavaCC, a parser generator for Java
- Coco/R, a scanner and parser generator for Java and C#
External links
- Berkeley Yacc, Generally conceded to be the best yacc variant available. In contrast to bison, it is written to avoid dependencies upon a particular compiler.
- Essence, an LR(1) parser generator for Scheme
- Parser-tools for DrScheme.
The contents of this article is licensed from www.wikipedia.org under the GNU Free Documentation License. Click here to see the transparent copy and copyright details


