X-Git-Url: http://git.megacz.com/?p=sbp.git;a=blobdiff_plain;f=TODO;h=07e6c74f4132b44c0743c83274cacd1f55ddf6fb;hp=8aa79409fc613206d3442286393638a407b3e928;hb=ead5dd828b3a45a9de17d4a0c7a41b3c42c4b3c3;hpb=d27d65cb994c6b9ae57a39f4bec99dd75c6bd6f7 diff --git a/TODO b/TODO index 8aa7940..07e6c74 100644 --- a/TODO +++ b/TODO @@ -1,16 +1,21 @@ + +- A new alternative (choice) operator that says "the compiler should + be able to statically determine that there is no ambiguity here" + +- Composable parsers (parser that generate output that is input to + future parsers). Use trees? + _____________________________________________________________________________ Immediately - - make sure I'm achieving optimal sharing (zipping heads and tails) + - keywordification (ie globally reject from all productions? + - generalized follow-by?) - clean up util package - - serializable parse tables? - - all that is required now is to separate Pos and Position - - - currently we GC the doomed stack when the parent dies... but we - should also GC the parent when the doomed stack dies if it was a - positive conjunct. + - currently we GC the doomed stack when the parent dies... but + [ideally] we should also GC the parent when the doomed stack dies + if it was a positive conjunct. - single-tree-return assumption - have a way to let question marks not be tagged? @@ -38,6 +43,16 @@ Immediately ______________________________________________________________________________ v1.1 +- use regression/least-squares/trend-prof to look for reductions whose + behavior is O(n^2)? (ie performed a number of times proportional to + the input consumed so far). + +- Optimizations: + - (x &~ y) => (x & z) + - string lookahead + - don't form result forests for negated productions + - early kills: (a &~ ... b ...) -> once "... b" is seen, "a" is dead + - MUST HAVE BETTER ERROR MESSAGES - use for developing java15.g - better ambiguity reporting