| **Context**-**free** grammar - Wikipedia, the **free** encyclopedia |

| | **Context**-**free** **grammars** are powerful enough to describe the syntax of most programming languages; in fact, the syntax of most programming languages are specified using **context**-**free** **grammars**. |

| | On the other hand, **context**-**free** **grammars** are simple enough to allow the construction of efficient parsing algorithms which, for a given string, determine whether and how it can be generated from the grammar. |

| | For instance, given a **context**-**free** grammar, one can use the Chomsky Normal Form to construct a polynomial-time algorithm which decides whether a given string is in the language represented by that grammar or not (the CYK algorithm). |

| en.wikipedia.org /wiki/Context-free_grammar (1310 words) |