checkpoint
[sbp.git] / TODO
diff --git a/TODO b/TODO
index 4931457..14e38b5 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,8 +1,25 @@
+_____________________________________________________________________________
+Immediately
 
-______________________________________________________________________________
-pre-1.0
+  - simplify metagrammar => go to top-down rewriting => finalize metagrammar and rdp-op's
+
+  - What is our use model?
+    - Parse, attribute, unify       (ag)
+    - Parse, transform tree, walk   (rdp)
+    - Parse, walk
+    - cascading tree rewrites
+
+      ==> use the middle formalism "for now" and in meta.g; layer others
+          on top of it
+
+  - Lay down the law on the different kinds of Sequence productions
+    and how they work.
 
-  - Javadoc comments
+     => mydrop
+     => mylift
+
+  - whitespace-in-braces?
+  - Deal with the problem of zero-rep productions and whitespace insertion
 
   - switch maximal to not-followed-by (~/~)
 
@@ -12,29 +29,38 @@ pre-1.0
   - fix the location stuff, it's broken
   - decent/better error messages
 
-  - finalize metagrammar
+  - write some grammars
       - Java grammar
       - TeX (math?)
       - URL (RFC)
       - RFC2822 (email message/headers)
-
-  - WIKI!!!  TEX!!!
+      - Wiki grammar
 
 ______________________________________________________________________________
-Undecided
-
-  - public API for hates/needs
+Soon
 
   - clean up the whole Walk situation
+
   - cleaner solution to "maximal"?
+
   - "lift" cases:
       - right now I can only lift the last child in a forest...  begs
         the question of what the right representation for Forests is
         if we need to be able to do lift operations on it.
 
+  - Parameterized LR
+  - "Regular Right Part" grammars (NP Chapman, etc)
+  - Attribute unification
+
+  - serialization of parse tables
+  - inference of rejections for literals
+  - "prefer whitespace higher up" (?)
+  - "ambiguity modulo dropped fragments"?
+       - can this be checked statically?
+       - eliminated statically?
 
 ______________________________________________________________________________
-post-1.0
+Later
 
   - Implement a k-token peek buffer (for each state, see if it "dead
     ends" during the next k Phases based solely on state -- ignoring
@@ -108,3 +134,9 @@ post-1.0
   - implement Johnstone's algorithm for "reduced, resolved LR
     tables" to eliminate superfluous reductions on
     epsilon-transitions.
+
+______________________________________________________________________________
+Neat Ideas
+
+  - Rekers & Koorn note that GLR Substring Parsing can be used to do
+    really elegant and generalized "autocompletion".