Release 1 (revision 2827) - 2013/02/11
-----------------------------------
- Added support for more SQL features:
  + SELECT DISTINCT
- Added support for standard functions in SQL queries.
- Added support for different levels of view maintenance Depth-0, Depth1, ..., 
  DepthN.
- Added support for calculation of the final result upon user request (
  EXPRESSIVE-TLQS).
- Added more examples into the release.
- Added bin/dbtoaster as wrapper script that handles the compilation process 
  for C++ and Scala.
- Added support for DELETE operations, as well as INSERTs.
- Several changes to improve compatibility with Windows and speed up C++ and 
  Scala compilation.
- Code formatting of Scala and C++ source files.
- Improved error reporting for SQL errors. Errors will include contextual 
  information.
- Minor changes to get the compilation of dbtoaster working on the latest CYGWIN.
- Added new query interface for both Scala and C++.
- Used actors for input processing in Scala.
- Added -g flag to pass through an argument to the second-stage compiler.
- Added DELETE-ON-ZERO flag for the Scala backend.
- Added HEURISTICS-MINIMAL-MAPS debug flag to choose between materializing the
  whole relation or only the part that is needed.
- Added flags CALC-NO-OPTIMIZE and CALC-NO-DECOMPOSITION to disable the
  calculus optimizations and graph decomposition, respectively.
- Added HEURISTICS-ENABLE-INPUTVARS flag, which enables experimental support
  for incremental view caches.
- Minor change in Heuristics to correctly pass the scope to nested
  subexpressions.
- Applied more optimizations:
  + Removed unnecessary if-then-else blocks where "if(pred) t else t" with. a side
    effect free predicate.
  + Introduced LookupOrElse operator for saving the unnecessary computations,
    when a tuple does not exist.
  + Changed the comparison of two AggSums expressions. This comparison now
    results in true if there is a mapping between the subexpressions and GB1
    maps to GB2. This fix prevents generation of duplicate maps
    (e.g. AggSum([A,B], m[][A,B]) equals
    AggSum([D,C],m[][C,D]).
  + Changed the approach for dealing with nested filters.
  + Fixed a problem where a multiplication with a comparison would not result 
    in using a filter operation, if the comparison was on the left-hand side.
  + More elegant handling of filter expressions on non-collections.
  + Optimization for instances of Aggregate(Filter(m)) where m is an 
    inexpensive expression
  + Transformed (B^=dA)*R(dA,B) into R(dA,B)*(B=dA), in order to prevent 
    expressions of the form R(dA,dA).
  + Added "HEURISTICS-PULL-OUT-VALUES" flag to prevent ValueRing terms and 
    comparisons from being pulled inside materialized maps. In certain cases,
    this option might decrease the number of generated maps
    (e.g. mddb/query2.sql).
  + Expressions of the form "E * 1.0" and "E * 0.0" are being reduced to "E" 
    and "0", respectively (note the float values), yielding some dead code.
  + Used long type for representing dates in generated programs.
  + Added Heuristics checks if the optimizer re-introduced AggSums in the
    expression being materialized.
  + Fixed the bug that was materializing the whole relation at depth less than
    infinity, and not only the needed columns (even when minimal_maps = true).
  + Added membership tests around lookups on LHS and RHS maps with input and
    output variables.
- Fixed the known bugs from the previous release:
  + Clarified the unbound variable error.
  + Resolved problems with DB parser.
  + Extended the SQL parser to support semicolon in strings.
  + Fixed inconsistencies in the examples paths presented in the documentation.
  + Fixed the problem with creating temporary files.
  + Removed "long long" types from C++ generated code.
  + Fixed transactional inconsistency bug.
  + Added a few variable initializations to prevent reading uninitialized data.
  + Fixed warning about floating numbers not having a trailing 0.
  + Fixed the name collision problem of raw relations.

Beta for Release 1 (revision 2525) - 2012/07/19
-----------------------------------
The initial release of DBToaster.
