This is a prototypical case of context-sensitive but not context-free language.
After this analysis, the fact that ValidPrograms is not context-free is formally shown using properties of closure and homomorphism for context-free languages .
It was attractive, says Pullum, because "a context-free language can always be handled fairly efficiently.
Because of their straightforward mathematical structure, context-free languages are easy to analyze.
Most of the context-free languages
differ in the amount of the resource (in this case, nondeterminism) that they require [6, 7].
The families of recursively enumerable and context-free languages
are denoted by RE and CF respectively.
Their asymptotics is crucial for establishing (inherent) ambiguity of context-free languages [Fla87], for the analysis of lattice paths [BF02], walks with an infinite set of jumps [Ban02] (which are thus not coded by a grammar on a finite alphabet), or planar maps [BFSS01].
Analytic models and ambiguity of context-free languages.
Topics covered in this volume include basic theory of computation, finite automata, properties of regular languages, context-free languages
, Turing machines, limits of algorithmic computation and computational complexity.