TODO in rockit-0.7.1 vs TODO in rockit-0.7.2
- old
+ new
@@ -1,31 +1,31 @@
------------------------------------------------------------------------------
New Interpretive Packrat Engine
------------------------------------------------------------------------------
-* Change ast so that the constant grammar elements need not be given
- when creating and ast instance. This should simplify the testing
- considerably.
+* Simplify the grammar-in-ruby specing.
+ * Need not both rule and prod methods only rule.
+ * Short hand "r" instead of "rule" like in old code
+ * Specify grammars as subclasses to Grammar instead of in a block. This
+ makes constants live in the proper namespace and is cleaner and more
+ semantically closer to Ruby.
-* Add more atest_minibasic tests.
+* While porting Java grammar:
+ * What happens if ast trees are only partially specified? Should it mix
+ sexprs with asts? Or should it create anonymous parse trees (ie the
+ class has no fixed name but there is a generic class on which you can
+ specify the name)?
-* Add tests of the MiniBasic interpreter.
+* Separate things out into different logical files depending on purpose.
-* Fix the MiniBasic interpreter.
+* Then we go on to parse Ruby.
-* Add tests for running the MB interpreter from the command line.
+* Then we release Rockit with MB and Java as a gem and rockit_ruby as a separate gem (with the ruby-related stuff). Possibly also ruby_parser.rb as a separate standalone file for people who just wants a parser (or generate multiple stand-alonoe files from rockit_ruby which includes different parts of the ruby-specific stuff (parser, pretty-printer, analyzer).
-* Add ability to run MiniBasic interpreter from command line.
+* Add the simple memoization (always memoize on non-transient prod level)
-* Start porting the next sample: Java grammar in xtc.lang
+* Then we start adding the adaptive optimizations.
-* When we can parse Java, we simplify Rockit so that only this new IPE is
- used and packed up in a gem.
-
-* Start porting C grammar in xtc.
-
-* Then we go on to parse Ruby.
-
-* Then we release as a gem. Check if we have a RubyForge account for Rockit.
+* Then we add the automatic creation of pretty-printers
------------------------------------------------------------------------------
OLD
------------------------------------------------------------------------------