$Id: ChangeLog,v 1.120 2003/10/09 09:58:41 jurgenv Exp $

2003/10/09 (markvdb@cwi.nl)
 * By accident the strategy symbol was removed, added again.

2003/10/09 (jurgenv@cwi.nl)
 * Added comparePT tool. Compares two parse trees modulo layout 
   and returns -1, 0 or 1

2003/10/09 ({jurgenv,markvdb}@cwi.nl)
 * Regenerated AsFix.def from library and synchronized.

2003/10/08 (markvdb@cwi.nl)
 * Bumped into version 1.0.

2003/10/07 (markvdb@cwi.nl)
 * Replaced [Symbol, pair, pair(<lhs(Symbol)>,<rhs(Symbol)>)]
   by [Symbol, tuple, tuple(<head(Symbol)>,<rest(Symbols)>)]

2003/10/03 (markvdb@cwi.nl)
 * Removed perm, set, strategy symbol.

2003/09/25 (markvdb@cwi.nl)
 * Added a function to check for constructor attributes.

2003/09/25 (jurgenv@cwi.nl)
 * Added PT_compareTree a lexicographical ordering on parse trees.
   It ignores layout and annotations, is complete and stable (if the
   parse tree format remains stable). Only trees of the same non-terminal
   can be compared.
 * Added tests for libmept
 * Test terms are put in an automatically generated dictionary. All
   files ending in .pt in the test/terms directory are automagically
   added to this dictionary
   
2003/09/23 (jurgenv@cwi.nl)
 * Added PT_removeTreeAllLayoutAndAnnotations

2003/09/18 (jurgenv@cwi.nl)
 * Renamed parsePT to liftPT

Thu Sep 11 13:00:15 CEST 2003 <jong@cwi.nl>
 * unparsePT.idef -> unparser.idef
 * addPosInfo.idef -> position-annotator.idef

2003/08/01 (jurgenv@cwi.nl)
 * Set to version 0.12.1

2003/07/02 (jurgenv@cwi.nl)
 * Release 0.12

2003/06/29 (markvdb@cwi.nl)
 * Access function for position information added.

2003/06/26 (jurgenv@cwi.nl)
 * Added package definition file

2003/06/23 (markvdb@cwi.nl)
 * equal-trees have to unpack their arguments.

2003/06/18 ({jong,markvdb}@cwi.nl)
 * Added explicit ATBpack to parsetrees.

2003/05/27 (jurgenv@cwi.nl)
 * renamed addPosInfo message to add-posinfo
 * extended addPosInfo tool with add-posinfo-to-depth

2003/05/26 (jurgenv@cwi.nl)
 * idefs spawn there own processes now

2003/05/16 (jurgenv@cwi.nl)
 * yieldSymbol prints <S-VAR> and <S-LEX> for variable and lexical
   sorts now. Context-free sorts are still printed without the < -CF>.

2003/05/15 ({jurgenv,markvdb}@cwi.nl)
 * Changed flattening of variables and lexicals. If a lexical or
   variable is ambiguous we don't flatten and return the AsFix2 tree

2003/04/10 (markvdb@cwi.nl)
 * Refined the recognition of the list separated production rules
   in the AsFix2 format.

2003/03/28 (jurgenv@cwi.nl)
 * Moved tree2dot and tree2graph and libGraph to graph-support package

2003/03/24 ({markvdb,iversen}@cwi.nl)
 * Added the function PT_setTreeAnnotations.

Tue Mar  4 10:05:50 CET 2003 <{markvdb,jong}@cwi.nl>
 * rename isVarDefault to isProductionVariable

2003/02/18 (markvdb@cwi.nl)
 * Activated the translation from tree2graph.

Mon Feb 10 08:53:50 CET 2003 <>
 * Add PT2graph.h to includes

2003/02/04 ({markvdb,jong}@cwi.nl)
 * Apply singleton pattern to generate empty layout in PTPT stuff.

2003/01/31 (markvdb@cwi.nl)
 * Bumped into version 0.12
 * Added a first version of a tree2graph tool.

2003/01/24 ({jong,jurgenv}@cwi.nl)
 * Removed obsolete ToolBus requirements

2003/01/22 (jurgenv@cwi.nl)
 * Release 0.11
 * LGPL license

2003/01/15 ({jong,markvdb}@cwi.nl)
 * Fixed bug in MEPT-utils.c: incorrect handling of amb() as parse tree.

2002/01/14 (jurgenv@cwi.nl)
 * Added support for annotations on PT_Trees and all kinds of ATerms 
   for PTPT_explode functionality. This means that every ATerm annotations
   is lifted to a parsed version too and is coupled with a PT_Tree using 
   the production  Tree Ann -> Tree. Similar for an annotated ATerm, see the
   ATerms syntax.
  
2002/01/09 (jurgenv@cwi.nl)
 * Added PTMEPT, a library for parsed parse trees and parsed ATerms

2002/12/10 (jurgenv@cwi.nl)
 * Removed use of global variables between files in implodePT

2002/12/10 (jurgenv@cwi.nl tvdstorm@science.uva.nl)
 * Fixed a bug in implodePT (concerning list variables)
 * Removed isTreeListInjection function from pt-support

2002/10/28 (vinju@loria.fr)
 * Removed implicit make rules for generation of ToolBus interfaces

2002/10/04 (vinju@loria.fr)
 * Removed complex parsetree pattern from MEPT.adt. It is now a true
   signature definition of AsFix. Missing functionality replaced by
   utility functions in MEPT-utils (with the same name).

2002/10/03 (vandenbr@loria.fr)
 * Removed a very subtle off by one bug in combination with '\\'.

2002/10/03 ({moreau,vinju}@loria.fr)
 * Added PT_renameInTree function that replaces one symbol by another
   in a parse tree.

2002/09/26 (vinju@loria.fr)
 * Commented out an assert in yieldPT (fixme). The assert fails when really
   big files (like Sdf2.sdf2) are unparsed.
 * Added PT_reverseSymbols

2002/09/11 (jong@cwi.nl)
 * Removed debug print from posInfo.c

2002/09/09 (vandenbr@loria.fr)
 * Added "#!/bin/sh" in order to make test scripts work under CYGWIN.

2002/08/07 (markvdb@cwi.nl)
 * Bumped to pt-support to 0.11beta.
 * Length calculation takes ambiguity cluster into consideration.

2002/07/24 (jurgenv@cwi.nl)
 * Release 0.10

2002/07/05 (jurgenv@cwi.nl)
 * Fixed a bug in the flattening of AsFix2 to AsFix2ME. Functions that
   yielded lists were not properly encapsulated by a list production.

2002/07/03 (jurgenv@cwi.nl)
 * Tree2dot can handle not only valid parse trees, but also partial
   parse trees and lists of parse trees.

2002/06/04 (vandenbr@loria.fr)
 * Removed annotations from trees before comparing them.

2002/05/24 (vandenbr@loria.fr)
 * Introduced the strategy symbol.

2002/05/22 (jurgenv@cwi.nl)
 * Made a toolbus tool out of addPosInfo
 * Set version of addPosInfo to 1.3
 * addPosInfo is able to ignore literals and layout on demand

2002/05/16 (vandenbr@loria.fr)
 * Added functionality to check the equality between 2 trees.
 * Fixes some minor bugs in parse tree construction functions.

2002/05/13 (vandenbr@loria.fr)
 * Added functionality to obtain the arguments of a tree.

2002/05/07 (vandenbr@loria.fr)
 * Transformed apply-function into a TB tool.

2002/05/06 (vandenbr@loria.fr)
 * Bumped to pt-support to 0.10beta.
 * Added a function to construct a parsetree given an arbitrary tree.

2002/04/19 (jurgenv@cwi.nl)
 * Release 0.9

2002/04/18 (vandenbr@loria.fr)
 * Variables are visualized with "*variable*" again, this bug
   was the result of the bug fix on 2002/03/26.
   
2002/03/26 (vandenbr@loria.fr)
 * Fixed a "bug" with respect to the flattening of variable names.

2002/03/04 (vandenbr@loria.fr)
 * Introduced parameterized sorts.

2002/02/07 (jurgenv@cwi.nl)
 * Changed -v option of addPosInfo to -V option
 * Set version of addPosInfo to 1.2
 * Bumped to pt-support to 0.9beta
 * All tools now print version on stderr

2002/02/07 (jurgenv@cwi.nl)
 * Release 0.8

2002/01/29 (vandenbr@loria.fr)
 * Fixed the efficiency bug discovered by Leon Moonen and
   Juergen Stuber. Replaced PT_appendArgs by PT_insertArgs
   followed by a PT_reverseArgs.
   
2002/01/22 (jurgenv@cwi.nl)
 * Added support for ambiguities in addPosInfo
 * Bumped version of addPosInfo to 1.1
 * Added -P option to implodePT. If a layout tree is annotated
   with the ATerm attribute "layout-place-holder" it is replaced
   by "layout(layout-place-holder)" instead of "layout([<str>])".
   This is for the conservative pretty-printing facility of gpp.
 * Bumped version of implodePT to 1.1

2001/12/19 (jurgenv@cwi.nl)
 * Changed implosion of layout in implodePT. If there is no layout
   the following node is generated: layout([]) (used to be layout([""])).

2001/12/18 (jurgenv@cwi.nl)
 * Fixed several bugs in MEPT-utils. These bugs affected implodePT.
 * Fixed a bug in implodePT. Layout is not interpreted as an optional
   anymore.

2001/12/05 (vandenbr@cwi.nl)
 * Fixed typo in usage info.
 * Adapted implodeVar.

2001/12/03 (jurgenv@cwi.nl)
 * Added interpretation of sequences, optionals and alternatives to 
   implodePT.

2001/11/29 (jurgenv@cwi.nl)
 * Syntax of attributes in productions has changes:
   assoc("left") becomes assoc(left) -- the quotes have dissappeared.
   Similarly for the other builtin attributes the quotes are gone.
 * User-defined attributes are now quoted only if they were in the SDF2
   specification. 

2001/11/25 (mdejonge@cwi.nl)
 * package now uses toolbuslib package
 * extended functionality of program-check.m4 macros

2001/11/23 (jurgenv@cwi.nl)
  * Fixed a bug in the flattener from AsFix2 to AsFix2ME. Nested lists 
    like {{A ";"}* ","}* were flattened to {A ","}* lists by mistake. 

2001/11/22 (vandenbr@loria.fr)
  * Bumped into version 8beta.
  * Fixed a bug when dealing with ambiguities in lists.

2001/11/21 ({jong,jurgenv}@cwi.nl)
  * Fixed some bugs in usage info and file opening in implodePT, unparsePT.

2001/11/20 (jurgenv@cwi.nl)
  * Added PT_yieldSymbolVisualVariables to MEPT-utils that pretty prints
    a symbol and shows the difference between variable and normal symbols.
  * The tool implodePT can conserve ATerm annotations during implosion.

2001/11/14 (jong@cwi.nl)
 * Fixed several bugs in argumenthandling in apply-function
 * Removed obsolete "-m <module>" stuff from apply-function program
   (It still suggested users pass a "-m <module>" both in usage() and
   in parameter checking. :(

2001/11/13 (jong@cwi.nl)
 * cleaned up ChangeLog entries
 * released version 0.7

2001/11/13 (markvdb@cwi.nl)
 * removed unused argument from applyFunctionToTree.

2001/11/12 (jurgenv@cwi.nl)
 * Added apply-function functionality to MEPT-utils.
 * Added apply-function tool to utils

2001/10/25 (markvdb@cwi.nl)
 * Improved the functionality of implodePT. 
 * alternatives and sequences have still to be done.

2001/10/23 (markvdb@cwi.nl)
 * Added #ifndef WITHOUT_TOOLBUS in order to rule out ToolBus code, in
   unparsePT-main.c

2001/09/27 (jurgenv@cwi.nl)
 * Made some important changes to the AsFix format. These changes are
   necessary to support some changes in the SDF syntax, and to fix some
   irregularities. The main benefit is the ability to have arbitrary ATerm
   attributes to productions. Other changes were made to have a slightly better
   correspondence between the SDF formalism and AsFix.
 * The following changes were made in the attributes of productions:
     - the constructors: "traverse", "memo" and "constructor" were removed.
     - the constructor: "assoc(x)" was added in order to comply
       with changes in the SDF grammar and its cons annotations. Only "left",
       "right", "assoc" and "non-assoc" can be children of assoc(x).
       Note that assoc(x) replaces the old atr(x) constructor.
     - the constructor: "term(term)" was added. The 'term' type corresponds to
       any ATerm.
     - the "atr(x)" constructor was removed around "bracket", "prefer", 
       "avoid" and "reject" in order to comply with the cons annotations of
       the SDF grammar.
 * See ChangeLog of sdf-support for the details on changes in SDF.
 * NOTE: these changes affect any tool using pt-support. The new version of
   pt-support will not be backward compatible with older versions. Therefor,
   any tool based on this package will also not be backward compatible.
                       
2001/08/28 (jong@cwi.nl)
 * Added #include directives to satisfy gcc-3.0.1
 * version 0.7beta

2001/08/08 (jurgenv@cwi.nl)
 * Added new predicate to library: PT_isProductionInjection

2001/08/01 (jurgenv@cwi.nl)
 * Bugfix: ambiguities inside of lists could not be converted to AsFix2ME.

2001/07/30 (jurgenv@cwi.nl)
 * Added PT_yieldAny library function that can unparse any valid subparsetree
   like: a parsetree, an appl, a lit, a character an amb or a list of 
   trees.
 * Adapted unparsePT to handle any part of a parse tree.
 * Bumped version of unparsePT to 1.3
 * Bumped to version 0.6

2001/07/25 (jurgenv@cwi.nl)
 * PT2dot functionality added to the library. This is a highly refactored
   and parametrized version of tree2dot which migrated from the sglr package.
 * Added tree2dot as a commandline tool.
 * Changed yielding of characters classes from octal to decimal notation.

2001/07/24 (jurgenv@cwi.nl)
 * reportAmbs added to the library. This used to be functionality in sglr.
 * also moved ambtracker tool from sglr to pt-support. Simplified its 
   output and commandline paramaters. 
 * The new version of ambtracker is 2.0.

2001/07/20 (jurgenv@cwi.nl)
 * added yielding of ambiguity clusters to yieldPT (=unparsePT tool). The
   first alternative of a cluster is yielded, the rest is ignored.
 * added '-a' option to unparsePT that triggers 'diff-like' visualization of
   ambiguity clusters. 
 * bumped version of unparsePT to 1.2

2001/07/17 (jong@cwi.nl)
 * version 0.4 released, bumped to 0.5
 * unparsePT transformed into a hybrid commandline/TB-tool

2001/07/16 (jong@cwi.nl)
 * version bumped to 0.4 in preparation of meta-release

2001/07/06 (jurgenv@cwi.nl, markvdb@cwi.nl)
 * REMOVED *ALL* AsFix1 related stuff!

2001/06/28 (jurgenv@cwi.nl)
 * extended support for variables to support lexical variables

2001/06/25 (jurgenv@cwi.nl)
 * added a library function that builds an injection from lex to cf

2001/06/19 (jurgenv@cwi.nl)
 * added a library function to concatenate to CharRanges
 * added a library function to create a flattened lexical from a string
 * added a library function to create a flat layout tree from a string

2001/06/07 (jurgenv@cwi.nl)
 * reactivated the addPosInfo commanline tool (it used to be called add-posinfo)
 * added library function for adding position information to a maximum depth
 * added a maximum depth commandline argument to the addPosInfo tool

2001/05/23 (markvdb@cwi.nl)
 * Released version 0.2, and bumped into 0.3

2001/05/11 (markvdb@cwi.nl)
 * Added Set.

2001/05/07 (markvdb@cwi.nl)
 * Add "empty", "seq", "func", "perm", and "iter-(sep-)n" symbol.

2001/05/04 (markvdb@cwi.nl)
 * Added "pair" symbol.
 * Predicate added to see whether a node is a list of characters.
 * Fixed bug in ParseTree length annotation.

2001/03/26 (jong@cwi.nl)
 * fixed substitution of undefined variable TREE in asfix-tools/Makefile.am
   and test/Makefile.am. This caused building of pt-support to look for old
   AsFix library in /lib/...

2001/03/13 (jurgenv@cwi.nl)
 * changed flattening of cons attributes in conversion from asfix2me to asfix1.
   It used to be "cons(name)", and now it is cons("name").

2001/03/02 (jurgenv@cwi.nl)
 * implemented PT_addParseTreePosInfo in libasfix1
 * added add-posinfo tool to libasfix1

2001/02/22 (markvdb@cwi.nl)
 * Fixed bug in translation from AsFix2ME to AsFix1 with list
   variables as single element in a list.

2001/02/21 (markvdb@cwi.nl)
 * Functionality added to obtain the yield of a production rule.
 * Fixed a bug in the conversion from AsFix2ME to AsFix1.
 * Changed label of attributes from attrs to attributes in adt.
 * Removed dead code.
 * Added PT_isOptLayoutSymbol function.
 * Removed: [Symbol, start, "<START>"]

2001/02/07 (markvdb@cwi.nl)
 * added directories for asfix2 mept and conversion
 * added initial version for documentation
 * added migration strategy to README

2001/02/06 (jong@cwi.nl)
 * added missing include_HEADERS in libasfix-old/libasfix
 * removed some configuration files from the bowels of libasfix-old
 * added toplevel make_rules
 * make_rules added to EXTRA_DIST
 * changed packagename in configure.in to pt-support

2001/02/05 (jong@cwi.nl)
 * Initial version of pt-support.
