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 ------------------------------------------------------------------------------