next up previous contents
Next: Installing zdatrinf and zdatrtok Up: Introduction Previous: Description

Changes in Version 1.1

Further tests and bug reports revealed the following problems in Version 1.0 and Version 1.01, which have been rectified in Version 1.1:

  1. Quoted atom '==' in tokeniser was not correctly dealt with.
  2. Infinite loop with missing LHS angle brackets in tokeniser.
  3. Faulty instantiation of RHS variables (the major bug).
  4. Incomplete read of final node in file with long comment sequences after final node.
  5. Error with comments in certain positions in declaration file.
  6. Undefined paths now result by default in an error message and forced exit from the programme. An optional flag -u is provided which causes the null value to be returned and does not interrupt evaluation.
  7. In the manual, a definition of <variablename> in the BNF specification has been provided.

One error with a segmentation fault could not be reduplicated. Bug reports are very welcome and should be sent to gibbon@spectrum.uni-bielefeld.de.

Evaluation of undefined paths has been modified. If no path match is found, by default evaluation halts and the programme exits with an error message. If the command line switch -u is set, the null atom is returned. Note that returning an atom as the value of an undefined path is equivalent to including at each node which has no empty LHS path an equation with an empty LHS path and evaluating to this atom.

ZDATR has different semantics for on the fly variables from some other DATR implementations. In case of a clash between an atom and a variable, the `atom wins over variable' default principle wins. This strategy permits implementation of `any' or `else' variables. In other DATR implementations (e.g. QDATR), the `longest path wins' strategy is extended to variables. This strategy involves non-deterministic search for query variable matching with paths containing variables, and is not adopted in ZDATR. We are indebted to Petra Barg, James Kilbury, Gerald Gazdar and Roger Evans for discussion of this point, though we have not followed their advice.


next up previous contents
Next: Installing zdatrinf and zdatrtok Up: Introduction Previous: Description

Dafydd Gibbon
Fri Mar 21 17:58:24 MET 1997