@TODO 10/11/17 Ben Culkin :GrammarReorg Better organize the provided sample grammars. @TODO 10/11/17 Ben Culkin :Determinism Add a way to get the grammar to pick rules in a deterministic fashion, so as to be able to iterate all of the rules. @TODO 10/11/17 Ben Culkin :ExportSanity Figure out a way to organize exports instead of just sticking them all into the global namespace. Maybe use the @ symbol for 'foreign rule references' (FRRs) ADDENDA: 10/26/17 We now have the '^' syntax to avoid shadowing issues, but this doesn't avoid the issue with duplicate exports. @TODO 10/23/17 Ben Culkin :Casing Provide some way to convert rules into different cases. @TODO 10/23/17 Ben Culkin :Spacing Find a saner way to do spacing. + rules work well for some things, but what is needed is some way to do it only one level deep. Possibly some kind of pragma to convert a rule to a single-level spacer? ADDENDA: 10/24/17 We now have a partial solution in 'despace-rule'. Now, grammars need to be adapted to use it. @TODO 10/23/17 Ben Culkin :Pluralizing Add some way to say to pluralize the contents of a rule @TODO 10/23/17 Ben Culkin :Extensions Add some soft of pragmas to allow the loading of extensions that provide custom rules/case types/pragmas and things like that @TODO 10/30/17 Ben Culkin :RegexPragma Add a pragma that applies a regex substitution to the generated version of a rule. @TODO 4/25/18 Ben Culkin :Debugging Add a way to print out the rules as a tree format, so as to perform better debugging of rules. Once this has been done, consider doing a CLI interface that allows manipulating and using grammars. @TODO 5/10/18 Ben Culkin :Despace Add a generalized form of despace-rule that allows inserting arbitray text between rule bits. Maybe call it 'intersperse-rule'? @TODO 5/10/18 Ben Culkin :RuleInclusion Add some way to sort of 'import' a rules body into another rule so as to not throw off probability by splitting. @TODO 5/18/18 Ben Culkin :PragmaErrors Give better error messages for malformed pragmas