CS 541 Lecture -*- Outline -*- * Other notations for context free grammars (2.3.4) emphasize design advantages/disadvantages over BNF less use of recursion (which may be hard to follow) avoid having to name each kind of list ** EBNF (extended BNF) uses regular expressions in productions Coms ::= Com | Coms ; Com becomes Coms ::= Com (; Com)* Problem with the parens is solved by using {} or quoting terminal (). ** Ledgard Variant of EBNF (SIGPLAN Notices, Oct 1980, pages 57-62) I prefer over EBNF as more readable use G ... instead of G* use [G] instead of (G|\epsilon) avoids complicated nesting of regular expressions Coms ::= Com [ ; Com ] ... He also suggests prettyprinting the stuff on the right Com ::= WHILE expr DO Coms DONE ** Syntax diagrams see book