!7 p { File f = loadLibrary(#1200000); L names = endingWithIC(".ctx", listFilesInZip(f)); int good = 0, bad = 0; for (S name : names) { L lines = lines(loadTextFileFromZip(f, name)); print(name + ": " + n(lines, "lines")); L rules = [S s : lines | javaTokC(s).contains("RULE")]; for (S rule : rules) { Explain e = explain(rule, ctxParsingRules(), "rule"); bool ok = e != null; if (ok) ++good; else ++bad; if (!ok) print(" " + (ok ? "OK RULE" : "BAD RULE") + ": " + rule); } } print(); print("Good rules: " + good + ", bad rules: " + bad); }