kjosib / booze-tools

Booze Tools will become the complete programming-language development workbench, all written in Python 3.9 (for now).
MIT License
14 stars 1 forks source link

More complete results from failed validation #3

Open kjosib opened 5 years ago

kjosib commented 5 years ago

ContextFreeGrammar.validate raises an exception for the first problem noticed. It might be nice to collect all the problems into a document of some form and raise THAT up the flagpole. However, that implies the "document of some form" gets designed, and some standard ways of reading said document also get implemented.

kjosib commented 4 years ago

The "document" is just a catalog of the problems found in a particular grammar definition. Problem kinds are defined and enumerated somewhere. Actual problems are manifest in some set of symbols, and perhaps more distinctly to particular production rules. The list can be returned from a "problems" method, thus separating mechanism from policy.

kjosib commented 2 years ago

Interim step: Grammar faults now route through a protocol object, which means a more polished application is possible.