packages feed

GenI-0.24: NEWS

GenI 0.24, 18 Sep 2013
----------------------
Note that the changes between this release and 0.20 are considered to be under
the BSD3 license.  GenI overall remains dual-licensed under the GPL and any
commercial-use terms you may wish to negotiate with INRIA. Having secured the
rights to use GenI 0.20, you may freely use GenI 0.24 in a similar fashion.

CHANGES TO WATCH OUT FOR

* Server/GUI changes: Semantic input must be full input.
  - Before: `foo(x) bar(y z)`
  - After:  `semantics:[foo(x) bar(y z)]`
* Customisable semantics : now you can accept any arbitrary
  input for which you can define a mapping to a GenI-style test case
* API change: the custom semantics argument is mandatory
* More extensive documentation

GUI

* Visual distinction between explicit null adjunction constraints
  (marked NA) and constraints inserted by GenI (marked INA)
* Bugfixes (now retains show-feature state across debugger steps)
* More informative top/bot unification failure diagnostics in the
  trash

GENERAL

* New "guided realisation" optimisation (focus on one polarity
  path at a time)
* Fixed errors where top/bottom unification wasn't being done
* Builds with haskell-platform 2013.2.0.0

GenI 0.22, 14 Apr 2012
----------------------
Note that the changes between this release and 0.20 are considered to be under
the BSD3 license.  GenI overall remains dual-licensed under the GPL and any
commercial-use terms you may wish to negotiate with INRIA. Having secured the
rights to use GenI 0.20, you may freely use GenI 0.22 in a similar fashion.

CHANGES TO WATCH OUT FOR

* Separation of geni and geni-gui into two packages;
  simpler installation
* Now using the top feature for lemanchors instead of bot
* Empty disjunctions forbidden in unification variables
* JSON input/output to morph processors have changed
* Lexical selection unifies semantics of tree schema + lemma with
  input semantics.

GUI

* New results tab with reminder of inputs
* Add gui element to display unanchored lexical selection.
* Jump to new tab in debugger panel when created.
* Update gui to use Pretty instead of Show
* Rename $algo-session tab to "tree assembly"
* Make warnings resizable.
* Fix display of path equations with 'interface' in them.
* Fix #50 - load button has no effect.
* Fix #49 - correct order that leaf nodes are returned.
* Show GenI version in About box.
* Add detect polarities and root feature editor to main gui.

DOCUMENTATION

* Literate GenI and genimanual replaced with
  http://projects.haskell.org/GenI/manual

GENERAL

* Builds with GHC 7
* Core behaviour
     * Early null-adjunction and semfilter obligatory
     * Handling of zero-literal semantic items restored
     * Unconstrained polarities in automaton construction.
       This makes it possible to do polarity detection with only a
       weakly specified root feature like [cat:_], and without needing
       the relevant feature to be implemented everywhere.

* Flags:
     * --trees (used to be --macros; latter is deprecated)
     * --batchdir now optional (defaults to a new temp dir)
     * --maxsteps (stop after N steps)
     * --extrapol REMOVED (use root feature instead)
* Logging facility (not used much in GenI yet)
  Can be configured in ~/.geni/config.yaml, for example
  logging:
   -
     name     : NLP.GenI.Console
     level    : WARN
     format   : simple "$msg"
   -
     name     : NLP.Geni.LexicalSelection
     level    : DEBUG
     format   : simple "$utcTime $loggername $msg"
     handler  : stderr
* Less repetition in warnings (hopefully easier to read)
* More hiding of constructors for safety
* New enrichment option for setting co-anchors (foo.lex=hello)
* Lexical selection performance enhancements
* Variables that only occur once are converted to anonymous,
  should make unification a bit more efficient
* Fix #39: reject malformed root feature input.
* New feature:
  * Variables with constraints on their possible values (?X/foo|bar)
  * Fancy disjunctions: tree schemata now allow disjunctions of
    unification variables (but not recursive). These must flatten down
    to plain old atomic disjunction once converted to elementary trees

* Time metric in statistics (Laura Perez)
* Do top/bottom unification on na-constrained nodes during initialisation.
* Polarity detection relaxed to work with constrained variables too.
  (?X/foo|bar gives the result as foo|bar)
* Bugfix in interpretation of root feature (it should be sorted).
* Flags:
  * --rootfeat always assumed, but defaults to '[cat:_]'
  * '-r' a short command line option for '--rootfeat'.

LIBRARY

* Somewhat safer and easier to understand API
  (still no stability yet)
* Replace String with Text in GeniVal
* Replace Show abuse with custom Pretty class
* Slightly less stateful (no target semantics in state)
* Much rearranging and renaming (sorry!)
* New: ability to provide custom lexical selection action
* New: ability to provide custom morph postprocessing action
* de-haskell98 (Gwern Branwen)
* No more null builder.

TOOLS (darcs get --lazy http://code.haskell.org/GenI)

* new tool, genireport: summarise batch generation results
* geniserver now talks over HTTP using a JSON format
* Use Sylvain Salvati's xmg2geni.xsl instead of geniconvert.
    * xmg2geni: fix treatment of missing lexemes.
    * xmg2geni: treat type=coanchor as other nodes in GenI.
* geniwrapper: illustrates C wrapper of GenI API

GenI 0.20, 29 Sep 2009
----------------------
- NON BACKWARD-COMPATIBLE CHANGES

  * GHC 6.8 or higher now required (GHC 6.10 + Haskell Platform preferred)
  * Input files now *assumed* to be UTF-8 encoded
    (output still ISO8859-1; hopefully locale-based in GHC 6.12)
  * Interface between GenI and morphological realiser now uses a JSON format.
  * Rootfeat optimisation now mandatory (flag no longer recognised)

- NEW FUNCTIONALITY

  * new flag --version now works and reports version from Cabal file
  * new flag --dump dumps derivation output to stdout in JSON format
  * new flag --ranking foo ranks outputs according to OT-style constraints expressed in foo
  * --batchdir now works with --testcase
  * --batchdir now dumps derivations and statistics in JSON format
  * --batchdir now works with instructions files
  * --metrics always expands 'default' to the default metrics
    (in addition to any other statistics you request)
  * new optimisation: early null-adjunction detection

- QUALITY ASSURANCE

  * Reference manual in docs/genimanual.pdf (make docs)
  * cabal install -fgui and cabal install produce the same underlying library
    only the executable is different
  * Easier GUI installation for MacOS X (application bundles now built
    automatically; no manual intervention required)
  * Adopted odd/even convention to distinguish devel builds from stable ones
    (eg. GenI 0.21.x is devel whereas GenI 0.20.x is stable)

GenI 0.17.4, 6 Apr 2009
-----------------------
* GHC 6.6 support

* GUI disabled by default

GenI 0.17.3, 3 Apr 2009
-----------------------
* Simplified build method
  * one single cabal package instead of two
  * cabal configure -f-gui to disable GUI
  * makefile stripped out

* Lexical selection on empty semantics now allowed
  * This is so that the zero-literal semantics mechanism can work again

* Better help text

* Baked-in unit testing (geni --unit-test)

GenI 0.10, 11 Dec 2006
----------------------
* Performance much improved after Haskell profiling
* Pre-compiled grammars option, geniserver (buggy)

GenI 0.9, 8 Dec 2006
--------------------
* Switched to new syntax: variables now must be prefixed with '?'
* Switched from Alex/Happy to Parsec
* Added API documentation via haddock

GenI 0.8, 16 Sep 2005
---------------------
* Support for latin-1 characters using Unicode wxhaskell
* Added a configure script and an install target in Makefile
* Changed from use of configuration files to use of command line switches
* Full configuration GUI
* Implementation of atomic disjunction
* --ignore-semantics mode (Jackie Lai)

GenI 0.7, 8 June 2005
---------------------
* Upgraded to ghc 6.4, wxwidgets 2.6, wxhaskell 0.9.4

GenI 0.6, 3 May 2005
---------------------
* User interface fixes (Window size bugs)
* Interface with Yannick Parmientier's selection module