Practically, for a language that can eventually be compiled/transformed into system level instructions, is it necessary that it be a context free grammar?
ex: Are all programming/scripting languages context free grammars? Java is based on CFGs, but is it actually the case that all programming languages are based on CFGs?
It does not seem mandatory, but there are gaps in my understanding.
Some context for the question: I was looking at Java language specification, which also provides the grammar rules. This made me think about this question.
.*provided one accepts that]searches for the matching bracket at runtime, and that unmatched brackets are therefore not an error. – Random832 Nov 30 '11 at 17:42