By default, a literal terminal symbol specified in a context-free grammar supplied to Eli will be recognized as though it had been specified by the appropriate regular expression. In some situations it is useful to carry out more complex operations at the time the literal symbol is recognized. Mark the literal symbol as being a special case. Provide a specification for the literal symbol. Assume that the first occurrence is required, and the second is optional.
All text following the second occurrence is to be ignored.
The regular expression must describe a literal symbol appearing in a context-free grammar supplied to Eli. Initially, the separator will be classed as a comment because there is no identifier preceding the regular expression. In some cases the phrase structure of a language depends upon layout cues rather than visible character sequences. If the first non-blank characters of two successive lines are indented by the same amount, then the lines simply contain adjacent statements of the same block. Layout cues can be represented by literal symbols in the context-free grammar that describes the phrase structure.