for package:BNFC

Non-monadic forM.
Format string for cat name, prefix "_" if the name is for internal rules
Format right hand side into list of strings
Ignore errors as much as possible?
Part of the lexer prelude needed when string literals are to be lexed. Defines an interface to the Buffer.
A sentential form is a sequence of non-terminals or terminals.
Number of block comment forms defined in the grammar file.
Returns all parseable rules that construct the given Cat. Whitespace separators have been removed.
As rulesForCat, but this version doesn't exclude internal rules.
Like rulesForCat but for normalized value categories. I.e., `rulesForCat (Cat Exp)` will return rules for category Exp but also Exp1, Exp2... in case of coercion