- - Sequence shouldn't be an Element
- - Should Tree<T> really be type-parameterized?
-
- - More topology untangling
- - needs/hates/follow API ugliness
-
- - do Forest/Tree still need a Region?
- - reconsider the degree of genericization
- - GraphViz stuff pollutes the API...
- - Forest needs a "manual access" API
- - the unwrap bit in Forest makes it really hard to expose an API for forests
-
- - evil problems with (x y? z /ws)
- - ParseFailed, GSS, Walk, Parser, Sequence, Forest
- - copyright notices
- - documentation
-
- - grammar highlighting?
- - comment indentation vs block indentation?
- - { and } in <pre>
- - recursive { { foo } }
+ - clean up util package
+
+ - 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?
+ - "flat" sequences (no subtrees contain "::"s?) -- stringifiable
+ - make it so that we can have multi-result nonterminals
+ so long as they always appear under double-colons?
+ auto-insert the unwrap?
+
+ - get rid of Sequence.Singleton if possible
+
+ - use 'a'-'z' or 'a-z' instead of [a-z]?
+ - de-genericize?
+ - foo.add(x)
+ foo.add(y.andnot(x)) ==> this is broken
+ - distinguish Conjunct from Sequence?
+ => !(Conjunct instanceof Reducible)
+ - avoid building the parts of the tree that end up getting dropped
+ - is it worth adding an additional class of states for these?
+ - or perhaps just a runtime node marker (hasNonDroppedParent)
+ - "ambiguity modulo dropped fragments"?
+ - this may conceal highly inefficient grammars...
+ - double-check all the region logic
+ - automatically collect time statistics and display