PARSE TREE | ---------------------- | | --------------- |
| | | | ------------- | | | | | | | The little program works. GRAMMAR ::= ::=
::= ::=
::= The := little ::= program ::= ::= works PHRASE STRUCTURE GRAMMAR ::= ::= a a ::= b ::= c generation => => a => b => bc CONTEXT SENSITIVE GRAMMAR ::= ::= b b ::= b c c b ::= a a b ::= a c ::= c c generation => b => bcc => bccc => abccc CONTEXT FREE GRAMMAR ::= ::= ::= x <- y ::= begin end ::= ::= ; LINEAR ::= u v ::= u RIGHT LINEAR ::= a | ab LEFT LINEAR ::= ba | a CHOMSKY HIERARCHY ---------------------------------------- | recursively-enumerable | | --------------------------------- | | | context-sensitive | | | | --------------------------| | | | | | context-free | | | | | | ------------------ | | | | | | | regular | | | | ---------------------------------------- PROG. LANG. APPROXIMATIONS ---------------------------------------- | strings of legal tokens | | --------------------------------- | | | syntactically correct | | | | --------------------------| | | | | | statically correct | | | | | | ------------------ | | | | | | | dynamically ok| | | | ---------------------------------------- LEXICAL CONVENTIONS reserved words: cannot be used as identifiers keywords (Algol 60) distinguished (by font, etc.) keywords in context: only recognized in context IF IF=THEN THEN THEN=ELSE; ELSE; IF=THEN=ELSE;