!!! Overview [{$pagename}] ([BNF]) is one of the two main notation techniques for context-free grammars, often used to describe the syntax of languages used in computing, such as computer [programming] languages, document formats, instruction sets and communication [protocols]. Many extensions and variants of the original [{$pagename}] notation are used; some are exactly defined, including [Extended Backus–Naur Form] ([EBNF]) and [Augmented Backus–Naur Form] ([ABNF]). The other main technique for writing context-free grammars is the van Wijngaarden form. They are applied wherever exact descriptions of languages are needed: for instance, in official language specifications, in manuals, and in textbooks on programming language theory. !! More Information There might be more information for this subject on one of the following: [{ReferringPagesPlugin before='*' after='\n' }]