
THIS FILE IS NO LONGER MAINTAINED. PLEASE SEE THE ChangeLog FOR A
SUMMARY OF THE LATEST CHANGES.

=================================================================
=================================================================
=================================================================

[ANNOUNCE] Link-Grammar Version 5.5.0 is now available.

Version 5.5.0 of link-grammar has been released.  It contains several
important bug-fixes for OpenCog users.

* The previous version accidentally broke the OpenCog API. This version
  fixes it.

* Linkages generated by the "ANY" random parser were not actually being
  randomized.  This is now fixed.  (Bug reported by Andres.)

* Poorly-formatted dictionaries no longer report errors.  (Bug reported
  by Alexei/Anton)

The complete list of changes is:

 * Fix accidental API breakage that impacts OpenCog.
 * Fix memory leak when parsing with null links.
 * Python bindings: Add an optional parse-option argument to parse().
 * Add an extended version API and use it in "link-parser --version".
 * Fix spurious errors if the last dict line is a comment.
 * Fix garbage report if EOF encountered in a quoted dict word.
 * Fix garbage report if whitespace encountered in a quoted dict word.
 * Add a per-command help in link-parser.
 * Add a command line completion in link-parser.
 * Enable build of word-graph printing support by default.
 * Add idiom lookup in link-parser's dict lookup command (!!idiom_here).
 * Improve handling of quoted words (e.g. single words in "scare
 * quotes").
 * Fix random selection of linkages so that it's actually random.

You can download link-grammar from
http://www.abisource.com/downloads/link-grammar/current/

The website is here:
https://www.abisource.com/projects/link-grammar/

WHAT IS LINK GRAMMAR?
The Link Grammar Parser is a syntactic parser of English (and other
languages as well), based on Link Grammar, an original theory of English
syntax. Given a sentence, the system assigns to it a syntactic structure,
which consists of a set of labeled links connecting pairs of words.

See the Wikipedia page for more info:
https://en.wikipedia.org/wiki/Link_grammar


=================================================================
=================================================================
=================================================================

[ANNOUNCE] Link-Grammar Version 5.4.4 is now available.

I'm pleased to announce that version 5.4.4 is now available. I don't
normally announce minor versions, but this one was almost named 5.5.0.
Which suggests that there were some important changes. Dictionary
loading is now thread safe. Security vulnerabilities are fixed. Parsing
of Russian is now 2x faster than before. Connectors can be individually
given length limits - handy for morphology and phonetic agreement - and
the root reason for the Russian speedup.  An assortment of fixes to the
English dictionary, including a reversal of some back-sliding in the
test corpus.

You can download link-grammar from
http://www.abisource.com/downloads/link-grammar/current/

The website is here:
https://www.abisource.com/projects/link-grammar/

WHAT IS LINK GRAMMAR?
The Link Grammar Parser is a syntactic parser of English (and other
languages as well), based on Link Grammar, an original theory of English
syntax. Given a sentence, the system assigns to it a syntactic structure,
which consists of a set of labeled links connecting pairs of words.


=================================================================
=================================================================
=================================================================

[ANNOUNCE] Link-Grammar Version 5.4.0 is now available.

I'm pleased to announce that version 5.4.0 is now available. Besides
including various bug fixes, this release is notable for completely
restructuring the organization of the source code, grouping files into
directories according to the processing stage that they implement.  See
below for the full ChangeLog.

You can download link-grammar from
http://www.abisource.com/downloads/link-grammar/current/

The website is here:
https://www.abisource.com/projects/link-grammar/

WHAT IS LINK GRAMMAR?
The Link Grammar Parser is a syntactic parser of English (and other
languages as well), based on link grammar, an original theory of English
syntax. Given a sentence, the system assigns to it a syntactic
structure, which consists of a set of labeled links connecting pairs of
words. The parser also produces a "constituent" (Penn tree-bank style
phrase tree) representation of a sentence (showing noun phrases, verb
phrases, etc.).

=================================================================
=================================================================
=================================================================

[ANNOUNCE] Link Grammar version 5.3.0 is now available. Download from:

http://www.abiword.org/downloads/link-grammar/5.3.0/link-grammar-5.3.0.tar.gz

This is a major release of the parser, with many important changes in
it. Most fundamentally, the tokenizer has been completely redesigned;
the tokenizer is the device that splits sentences in sequences of words
and (for non-English languages) morphemes.

Another very important change: The python bindings are completely
redesigned, and not in a backwards-compatible way. The new python
bindings are much closer to how the parsing process should be thought
about in the abstract.

There are also various fixes: the SAT solver is no longer crippled.
Assorted performance speedups have been implemented, especially
affecting longer sentences.  Assorted bugs and cleanup has been
performed.

The ChangeLog notes other fixes as well:

Version 5.3.0: (22 November 2015)
 * Major redesign of the python bindings.
 * Major redesign of sentence tokenization (the "wordgraph" design)
 * Verb 'steal' is optionally transitive.
 * Fixes for misc MSVC warnings.
 * Hebrew dictionary expansion.
 * Enhanced diagram printing, giving more space for link names.
 * Minor work on phonetic agreement for 'a' vs. 'an'.
 * Add ability to histogram the costs of different parses.
 * Improve support for splitting sentences.
 * Change default setting of 'islands_ok' to true.
 * Improve performance on long sentences.
 * Fix rare crash due to memory corruption on long sentences.
 * Random morphology generation can be enabled at runtime.
 * Remove obsolete, unmaintained MacOSX build file.
 * Extensive updates to man page.
 * Fix crash on long sentences (issue #137).
 * Fix a memory leak in language bindings (issue #138).
 * Remove bogus post-processor API function.
 * Fix broken domain letter printing.
 * New regex-file feature - negative regex'es.
 * Correct the handling of morphology stems with non-LL links.
 * Fix !!LEFT-WALL and !!RIGHT-WALL
 * SAT solver now linked statically.
 * Assorted SAT solver cleanup and improvements.
 * Performance improvement in fast matcher: 15% faster on fixes.batch.

--------------------

The link-grammar homepage:
http://www.abiword.org/projects/link-grammar/

WHAT IS LINK GRAMMAR?
The Link Grammar Parser is a syntactic parser of English, Russian,
Arabic and Persian (and other languages as well), based on Link Grammar,
an original theory of syntax and morphology.  Given a sentence, the
system assigns to it a syntactic structure, which consists of a set of
labeled links connecting pairs of words. The parser also produces a
"constituent" (HPSG style phrase tree) representation of a sentence
(showing noun phrases, verb phrases, etc.).  The RelEx extension
provides Stanford-style Dependency Grammar output.



=================================================================
=================================================================
=================================================================


[ANNOUNCE] Link Grammar version 5.2.0 is now available. Download from:

http://www.abisource.com/downloads/link-grammar/5.2.0/link-grammar-5.2.0.tar.gz

This is a major release of the parser, with many important changes in
it.  The internals of the parser have been re-organized, resulting in
a speedup of 2x to 4x for typical English texts.  Multiple multi-
threading bugs were fixed, and there is now a simple multi-threading
unit test.  A memory leak was fixed, and a memory over-consumption
bug was fixed.  These changes were enabled by the final removal of the
"fat link" code from the parser.

Parser internals work continues apace: it is expected that a version
5.3.0 will follow shortly, featuring a completely re-designed tokenizer.
This redesign should enable simpler and better morphology support.

The ChangeLog notes other fixes as well:

Version 5.2.0 (27 December 2014)
 * y'all, ain't, gonna, y'gotta: Beverly Hillbillies basilect.
 * Permanent removal of the fat-link code.
 * Remove deprecated constituent tree code.
 * Windows: add terminal screen resizing support.
 * Windows: a build fix.
 * reign, rule, run, leave, come: can take predicative adjective.
 * Rework costs for many verb-derived adjectives.
 * Handle (predicative) adjectival modifiers for assorted perfect verbs.
 * Fixes for various color names.
 * Fixes for various affirmative answers.
 * Add 100 missing verbs.
 * Add preliminary lxc-docker (docker.io) support.
 * Remove MSVC6 support.
 * Fix memleak introduced in version 5.1.0
 * Speedup of 1.7x to 4x (depending on text) from linkage processing redesign.
 * Fix multi-threading safety bug.
 * Fix link-and-domain printing alignment (to handle utf8 char widths).
 * Windows: fixes for MSVC12 support.
 * Fix memory consumption bug (EMPTY_WORD) introduced in version 4.7.10.
 * Get rid of xrealloc, which clashes with libbfd symbol xrealloc.
 * Add multi-threaded parsing unit test.


--------------------

The link-grammar homepage:
http://www.abiword.org/projects/link-grammar/

WHAT IS LINK GRAMMAR?
The Link Grammar Parser is a syntactic parser of English, Russian,
Arabic and Persian (and other languages as well), based on Link Grammar,
an original theory of syntax and morphology.  Given a sentence, the
system assigns to it a syntactic structure, which consists of a set of
labeled links connecting pairs of words. The parser also produces a
"constituent" (HPSG style phrase tree) representation of a sentence
(showing noun phrases, verb phrases, etc.).  The RelEx extension
provides Stanford-style Dependency Grammar output.


=================================================================
=================================================================
=================================================================

Link Grammar version 5.1.2 is now available. Download from:

http://www.abisource.com/downloads/link-grammar/5.1.2/link-grammar-5.1.2.tar.gz

The most serious fix in this release is a build-break fix for Apple OSX Mavericks.

Other fixes, from the ChangeLog:

 * Fix greeting: "How do you do?"
 * Fix indirect object in 'what' questions: 'To what do you owe your success?'
 * Fix assorted questions with verb "to be".
 * Compile fixes for Apple OSX version "Mavericks"

--------------------

The link-grammar homepage:
http://www.abiword.org/projects/link-grammar/

WHAT IS LINK GRAMMAR?
The Link Grammar Parser is a syntactic parser of English (and other
languages as well), based on link grammar, an original theory of English
syntax.  Given a sentence, the system assigns to it a syntactic
structure, which consists of a set of labeled links connecting pairs of
words. The parser also produces a "constituent" (Penn tree-bank style
phrase tree) representation of a sentence (showing noun phrases, verb
phrases, etc.). The RelEx extension provides dependency-parse output.

=================================================================
=================================================================
=================================================================

[ANNOUNCE] link-grammar version 5.1.0

Version 5.1.0 of link-grammar is now available for download at
http://www.abiword.org/downloads/link-grammar/5.1.0/link-grammar-5.1.0.tar.gz

This version includes a number of important changes. One of these is
that the connectors can now be given a direction (head and tail
indicators), so that link-grammar dependencies can now be true,
hierarchical dependency arrows.  This is of marginal importance for
English, where dependency directions are implicit, but is vital for
free-word-order languages, where bi-directional links are not enough.

Another important change is that costs can now be arbitrary floating
point numbers. This is particularly useful for providing fine-grained
parse ranking.  The LG cost system assigns a "cost" to every connector,
and the sum-total of costs for a sentence determines the parse ranking.
Since costs are additive, they behave as entropies (log P -- the
logarithm of a probability: probabilities are multiplicative, logarithms
are additive).

Under the covers, there's been some major work on the tokenization
(splitting sentences into words) and morphology (splitting words into
morphemes) code.  This work is ongoing, and should eventually result in
much better support for non-English languages.

Other notable changes include an updated Russian dictionary, and an
assortment of changes to the English dictionary.  An intriguing step
towards phonology: LG can now distinguish between the use of the
determiners "a" and "an" preceding nouns that start with consonants
or vowels.  Whether fancier phonology support is possible is a curious
question.

The full ChangeLog is below:

 * Updated Russian dictionaries from Sergei Protasov.
 * Added morphology-based unknown-word handling for Russian, from Sergei.
 * Fix up fat-linkage code, which was recently broken...
 * API cleanup: many command-line options never belonged in the API.
 * New emoticon support was clobbering certain dictionary words.
 * Fix: "Go to spot X", "It happens at time T."
 * Add a dozen missing verbs.
 * Minor work on greetings.
 * Add mechanism for denoting fractional costs in the file-backed dict.
 * Fix: broken handling of gerunds (due to bad verb-wall connectors)
 * Major redesign of morpheme splitting mechanism (from AmirP)
 * Minor extensions to support numeric formulas, e.g. 1 + 1 = 2.
 * Remove fat linkage support from the SAT solver.
 * Enable build of SAT solver by default.
 * Fix multiple bugs with unit stripping.
 * Add bounds-checking to the C API.
 * Fix the old disjunct-printing implementation.
 * Add support for easy-to-use link direction indicator.
 * Add random morphology generator tool.
 * Partial support for phonetic use of "a" vs. "an" for English.
 * Rework how coordination between conjunctions works: "either... or ...", etc.
 * Major redesign of tokenization mechanism (from AmirP)

--------------------

The link-grammar homepage:
http://www.abiword.org/projects/link-grammar/

Download:
http://www.abiword.org/downloads/link-grammar/5.1.0/link-grammar-5.1.0.tar.gz

WHAT IS LINK GRAMMAR?
The Link Grammar Parser is a syntactic parser of English (and other
languages as well), based on link grammar, an original theory of English
syntax.  Given a sentence, the system assigns to it a syntactic
structure, which consists of a set of labeled links connecting pairs of
words. The parser also produces a "constituent" (Penn tree-bank style
phrase tree) representation of a sentence (showing noun phrases, verb
phrases, etc.). The RelEx extension provides dependency-parse output.

=================================================================
=================================================================
=================================================================

Version 5.0.0 of the Link Grammar Parser is now available.

(Yes, its April 1st.  No, this is not a joke.  Maybe I'll think of
something snarky next year.)

We are proud to announce a major new release of the Link Grammar Parser!
It contains many important changes and new additions.  One of the most
significant changes is that the license has been changed from the BSD
license to the LGPL.  This was done to enable considerably more
flexibility in accepting contributions to the project: it seems that
few are particularly interested in contributing to a BSD-licensed project.
This change has enabled folding in some new work:

 o Arabic and Persian dictionaries!  These were previously maintained
   as separate add-ons.  Including them as part of the distribution
   should make it easier for interested users.

 o A new 'bindings' directory, containing code for Java, Python, Common
   Lisp, OCaML and AutoIt programming languages.  The Python bindings
   are an updated version of the older pylinkgrammar-0.2.13 bindings.
   A SWIG interface file should make it easy to create other language
   bindings as well.

 o Improved morphology support. This will be invisible to most users,
   but it lays the groundwork for add Hebrew support to the parser.

 o Expanded Lithuanian support. This remains a simplistic prototype, but
   it now performs a more sophisticated morphological analysis.

 o Experimental Turkish and Hebrew dictionaries.

 o A demo of the JSON parser server: it shows how to run the server,
   which will accept accept raw sentences on a socket, and returns the
   parsed forms.

 o Some slightly incompatible changes to the API: it was time for some
   housekeeping.

 o Misc minor updates to the English Language dictionaries.

 o Preliminary work for SQL-backed dynamic dictionaries. This should
   enable certain types of automated language learning.

The full ChangeLog is shown below.

--------------------

The link-grammar homepage:
http://www.abiword.org/projects/link-grammar/

Download:
http://www.abiword.org/downloads/link-grammar/4.7.9/link-grammar-4.7.9.tar.gz

WHAT IS LINK GRAMMAR?
The Link Grammar Parser is a syntactic parser of English (and other
languages as well), based on link grammar, an original theory of English
syntax.  Given a sentence, the system assigns to it a syntactic
structure, which consists of a set of labeled links connecting pairs of
words. The parser also produces a "constituent" (Penn tree-bank style
phrase tree) representation of a sentence (showing noun phrases, verb
phrases, etc.). The RelEx extension provides dependency-parse output.


CHANGELOG:

Version 5.0.0 (1 April 2014)
 * License upgrade to LGPLv2.1
 * Arabic dictionaries, from Jon Dehdari
 * Persian dictionaries, from Jon Dehdari
 * Support for Hebrew tokenization, from Amir P.
 * Fix wild-card matching for user-supplied word lookup.
 * Prototype Turkish dictionary from Can Bruce.
 * Re-arrange programming language bindings directory.
 * Adopt the orphaned/unsupported pylinkgrammar Python bindings.
 * Deprecate the obsolete CNode interface.
 * Provide low-level perl bindings.
 * Adopt the orphaned/unsupported OCaML bindings.
 * Support affirmative replies: "Who did it?" "John's evil twin."
 * Expanded Lithuanian dictionary.
 * Minor disjunct printing fixes.
 * Fix: "Mary is too XXX to talk to."
 * Prototype Hebrew dictionary from Amir P.
 * Change !suffixes flag to !morphology.
 * Introduce a bi-directional connector, for free-word-order languages.
 * Introduce a symmetric-AND operator, for free-word-order languages.
 * Add demo shell script for running the JSON parse server.
 * Bugfix: Java server failing when input sentence has commas in it!
 * New !test and !debug commands for selective debugging support.
 * Print post-processing rejection message, when !bad is enabled.
 * Remove some deprecated functions for C API.
 * Remove all deprecated functions from Java API.
 * Initial support for an SQL-backed dynamic dictionary.


=================================================================
=================================================================
=================================================================

Version 4.8.5 of the Link Grammar Parser is now available.

This is the third release in about a week; each prompted by a
build-break in the previous version.  Sorry!  There's been assorted
(minor) new work, and this has been enough to cause trouble for
various people.

Some notable changes in the last 6 weeks:
 * Improved Russian (UTF-8) support for MSWindows users.
 * Build files for MSVC12
 * Several Java binding fixes
 * English dictionary: add a verb-wall connector for present participles.

A full list of changes is given below. If none of these seem to affect
you, there is no particular need to upgrade.

--------------------

The link-grammar homepage:
http://www.abiword.org/projects/link-grammar/

Download:
http://www.abiword.org/downloads/link-grammar/4.7.9/link-grammar-4.7.9.tar.gz

WHAT IS LINK GRAMMAR?
The Link Grammar Parser is a syntactic parser of English (and other
languages as well), based on link grammar, an original theory of English
syntax.  Given a sentence, the system assigns to it a syntactic
structure, which consists of a set of labeled links connecting pairs of
words. The parser also produces a "constituent" (Penn tree-bank style
phrase tree) representation of a sentence (showing noun phrases, verb
phrases, etc.). The RelEx extension provides dependency-parse output.


CHANGELOG:

Version 4.8.5 (5 January 2014)
 * Update memory usage accounting; fix accounting bugs.
 * Fix Java garbage collection bug.
 * Fix numerous compiler warnings in the SAT-solver code.
 * Fix build-break involving multiple declaration of 'Boolean'.

Version 4.8.4 (30 December 2013)
 * Fix build break for Mac OSX.

Version 4.8.3 (30 December 2013)
 * Create new msvc12 build files, restore old msvc9 files.
 * Revert location of the Windows mbrtowc declaration.
 * Add verb-wall connector for present participles.
 * Fix build-time include file directory paths.
 * Provide the 'any' language to enumerate all possible linkages.
 * Fix recognition of U+00A0, c2 a0, NO-BREAK SPACE as whitespace.
 * Improve parse-time performance of exceptionally long sentences.
 * Fix crash on certain sentences containing equals sign.

Version 4.8.2 (25 November 2013)
 * More MSWindows UTF-8/multi-byte fixes (for Russian).
 * Add missing JSONUtils file.

Version 4.8.1 (21 November 2013)
 * Ongoing work on Viterbi.
 * Updated MSVC9 project files from Jand Hashemi (Lucky--)
 * Fix important bug in Java services: return top parses, not random ones.
 * Java: for the link-diagram string, do not limit to 80 char term width.
 * Windows: UTF-8 fixes so that Russian works in most MSWindows locales.


=================================================================
=================================================================
=================================================================

Version 4.8.0 of the Link Grammar Parser is now available.

This is the start of a new version series, containing an important
change to the English language dictionary. Three new link types are
introduced WV, CV and IV. These are used to connect the left-wall to
the primary verb of the sentence (WV), to connect the ruling clause
to the primary verb of a dependent clause (CV), and a similar link
for certain infinitive verbs (IV).  The goal of these links is to
make it easier to locate verbs, and thus to provide a more direct
mapping from the link-grammar formalism to a dependency parse (as
dependency parses always put the verb at the root of a sentence).

These are not the first links that explicitly indicate root verbs:
several other link types already play this role: The AF, CP, Eq, COq
and B links already play this role. The new WV, CV and IV links
round out this capability and do so in a very general form.  See
http://www.abisource.com/projects/link-grammar/dict/section-WV.html
for details.

With this release, we expect that all (non-auxiliary) verbs in a
sentence will be linked either to the wall, or to a controlling parent.
We also expect there to be some additional fixes and tightening-up
to occur in future releases, especially in regards to comparative
sentences.

This release also includes a variety of fixes to the Java API/server.
In addition, some ancient, deprecated C code was removed.

--------------------

The link-grammar homepage:
http://www.abiword.org/projects/link-grammar/

Download:
http://www.abiword.org/downloads/link-grammar/4.7.9/link-grammar-4.7.9.tar.gz

WHAT IS LINK GRAMMAR?
The Link Grammar Parser is a syntactic parser of English (and other
languages as well), based on link grammar, an original theory of English
syntax.  Given a sentence, the system assigns to it a syntactic
structure, which consists of a set of labeled links connecting pairs of
words. The parser also produces a "constituent" (Penn tree-bank style
phrase tree) representation of a sentence (showing noun phrases, verb
phrases, etc.). The RelEx extension provides dependency-parse output.


CHANGELOG:

Version 4.8.0 (24 October 2013)
 * Fix "he answered yes"
 * Support bulleted, numbered lists.
 * New link types from Lian Ruiting, for identifying the head-verb.
 * Java: fix bug when totaling WordNet word-sense score.
 * Java: add info to README about using the JSON parse server.
 * Java: remove many deprecated functions.
 * C API: remove some deprecated functions.
 * Java: fix silent failure when library is not found.
 * Java: Add support for fetching the ASCII-art diagram string.
 * Java: Fix insane language selection initialization.
 * Fix: "The pig runs SLOWER than the cat."
 * Fix: conjoined superlatives: "... the longest and the farthest."
 * Fix: "inside" can be used with conjunction: "near or inside..."
 * Fix: conjoined question modifiers: "exactly when and precisely where..."
 * Fix: issue 59: crash/corruption when dictionary opened twice.
 * Fix: assorted exclamations!

=================================================================
=================================================================
=================================================================

Version 4.7.12 of the Link Grammar Parser is now available.

The biggest change in this version is a sharply updated Russian
dictionary, which fixes a large number of bugs generated during
during the initial release.  Thanks to Sergey Protasov who did
almost all this work!

The other notable change is that the fat-link code is no longer
build by default.  It will be permanently removed in some future
version, "real soon now".

A miscellany of other minor changes are listed below.

The link-grammar homepage:
http://www.abiword.org/projects/link-grammar/

Download:
http://www.abiword.org/downloads/link-grammar/4.7.12/link-grammar-4.7.12.tar.gz

WHAT IS LINK GRAMMAR?
The Link Grammar Parser is a syntactic parser of English (and other
languages as well), based on link grammar, an original theory of English
syntax.  Given a sentence, the system assigns to it a syntactic
structure, which consists of a set of labeled links connecting pairs of
words. The parser also produces a "constituent" (Penn tree-bank style
phrase tree) representation of a sentence (showing noun phrases, verb
phrases, etc.). The RelEx extension provides dependency-parse output.


CHANGELOG:
Version 4.7.12 (25 May 2013)
 * Large fixes to the Russian dictionaries.
 * Windows: Explicitly fail if cygwin version is too old.
 * Tweak the lt dict to work again with the modern parser.
 * Make the fat linkages code be compile-time configurable.
 * Disable fat linkages by default; mark as deprecated.
 * Fix SAT-solver build; recent changes had broken it.
 * Export read-dict.h as a public API.
 * Ongoing development of the Viterbi prototype.
 * Windows: some UTF8/widechar refactoring.
 * Java bindings: add method to set the language.
 * CMake: add version checking to the CMakefile
 * Fix: failed handling of capitalized first word for Russian.
 * Fix: stemming failures in many cases (for Russian dictionaries)
 * Add flag to suppress stem-suffix printing.
 * Windows: Fixes to MSVC6 build files.
 * Fix: hash-table bug affecting Russian dictionaries

=================================================================
=================================================================
=================================================================

Version 4.7.0 of the Link Grammar Parser is now available.  This version
introduces a major restructuring of the manner in which conjunctions are
handled.  Conjunctions are no longer indicated with "fat links"; instead,
a half dozen new link types (non-fat, of the ordinary kind) are introduced.
This allows for a more careful and precise treatment of conjunctions; it
significantly reduces the number of exceptional cases handled in the C code,
and results in faster parser: from 1.3x to 2.7x faster, depending on the
text.

WHAT IS LINK GRAMMAR?
The Link Grammar Parser is a syntactic parser of English (and other
languages as well), based on link grammar, an original theory of English
syntax. Given a sentence, the system assigns to it a syntactic
structure, which consists of a set of labeled links connecting pairs of
words. The parser also produces a "constituent" (Penn tree-bank style
phrase tree) representation of a sentence (showing noun phrases, verb
phrases, etc.). The RelEx extension provides dependency-parse output.

CHANGELOG:
Version 4.7.0 (12 September 2010):
 * Fix: hunspell configuration on Fedora (bugtracker issue 47)
 * Fix: 'turn' with adjective: "She turned him green" from wingedtachikoma
 * Fix: comma-conjoined modifiers: "It tastes bitter, not sweet."
 * Fix: conjoined question words: "When and where is the party?"
 * Fix: recognize short, capitalized words (Los, La, etc.).
 * Treat colon as synonym for is: "The answer: yes."
 * Fix: begin with prepositions: "It all began in Chicago."
 * Fix: "What does it come to?" and related.
 * Fix: null infinitive: "I'd like to, I want to."
 * Fix: "Because I said so."
 * Fix: "sure" as preverbal adverb: "It sure is."
 * Fix: Gerunds with determiners: "a running of the bulls"
 * SJ link for conjoined nouns/noun phrases.
 * Sort linkages according to whether fat linkage was used.
 * Add flag to enable use of fat linkage during parsing.
   (Fat links now disabled by default).
 * Add male/female gender tags to misc nouns.
 * Fix: misc optionally transitive verbs: mix, paint, boot
 * Fix: word order: "look about fearfully", "look fearfully about", around
 * Fix: recognize simple fractions
 * Fix: "is" with uncountable nouns: "there is blood on your hands"
 * Fix: Roman numeral suffixes e.g. "Henry VIII"
 * Fix: regression in dates followed by punctuation. "In the 1950s, ..."
 * Fix: verbs drank, drunk are optionally transitive.
 * Fix: regression: "all the X", X can be plural or mass.
 * Fix: verbs paint, color may be ditranstive: "paint the car bright green"

=================================================================
=================================================================
=================================================================

Fat Links:
----------
   As of version 4.7.0 (September 2010), parsing using "fat links" has
   been disabled by default, and is now deprecated.  The function is
   still there, and can be turned on by specifying the !use-fat=1 command,
   or by calling parse_options_use_fat_links(TRUE) from programs.

   As of version 4.7.12 (May 2013), the "fat link" code is no longer
   compiled by default.  To obtain the fat-link version, ./configure
   must be run with the --enable-fat-links --disable-sat-solver flag.
   Enabling this will generate a lot of warning messages during
   compilation.

   As of version 5.2.0 (December 2014) the "fat link" code has been
   removed. The fat-link code consisted of about 5 KLOC or about 1/6th
   of the total code. About 23 KLOC of the core parser code remains.
   Users of the Russian dicts must use versions prior to this to get
   Russian sentences with conjunctions in them to parse.

   Older versions of the link-grammar parser used "fat links" to
   support conjunctions (and, or, but, ...). However, this leads
   to a number of complications, including poor performance due to
   a combinatorial explosion of linkage possibilities, as well as
   an excessively complex parse algorithm.

Corpus Statistics:
------------------
   Version 4.4.2 (January 2009) introduced a parse-ranking system based
   on corpus statistics.  This allows the most likely parse to be
   identified in terms of the probabilities of word disjuncts observed
   on actual text.  The system also includes a way to assign WordNet
   word senses to a word, based on the grammatical usage of that word.
   An overview of the idea is given on the OpenCog blog, here:

   http://brainwave.opencog.org/2009/01/12/determining-word-senses-from-grammatical-usage/

   As of 2012, this parse-ranking system is obsolescent. The primary
   issue is that the data files need to be rebuilt, to reflect the new
   dictionary structure; the version skew between the old databases and
   the current dictionaries will invalidate results.  If you are
   interested, contact the mailing list, and take a look at
   https://github.com/opencog/link-grammar/issues/292

   To enable the corpus statistics, specify

      ./configure --enable-corpus-stats

   prior to compiling.

   There are no currently-maintained databases for this ranking system.
   Older databases can be downloaded from

      http://www.abisource.com/downloads/link-grammar/sense-dictionary/
   or
      http://gnucash.org/linas/nlp/data/linkgrammar-wsd/

   These older databases are not very accurate, since the English
   language dictionaries have seen significant changes since these
   were first created.  To be usable, the databases should be recreated
   for the current dictionaries.

   The data is contained in an sqlite3 database file,

      disjuncts.20090430.db.bz2

   Unzip this file (using bunzip2) rename it to "disjuncts.db", and
   place it in the subdirectory "sql", in the same directory that
   contains the "en" directory. For default Unix installations, the
   final location would be

      /usr/local/share/link-grammar/sql/disjuncts.db

   where, by comparison, the usual dictionary would be at

      /usr/local/share/link-grammar/en/4.0.dict

   After this is installed, parse ranking scores should be printed
   automatically, as floating-point numbers: for example:

      Unique linkage, cost vector = (CORP=4.4257 UNUSED=0 DIS=1 AND=0 LEN=5)

   Lower numbers are better.  The scores can be interpreted as -log_2
   of a certain probability, so the lower the number, the higher the
   probability.

   The display of disjunct scores can be enabled with the !disjuncts
   flag, and senses with the !senses flag, at the link-parser prompt.
   Entering !var and !help will show all flags.  Multiple parses are
   sorted and displayed in order from lowest to highest cost; the sort
   of can be set by saying !cost=1 for the traditional sort, and
   !cost=2 for corpus-based cost.  Output similar to the below should
   be printed:

      linkparser> !disjunct
      Showing of disjunct used turned on.
      linkparser> !cost=2
      cost set to 2
      linkparser> !sense
      Showing of word senses turned on.
      linkparser> this is a test
      Found 1 linkage (1 had no P.P. violations)
      Unique linkage, cost vector = (CORP=4.4257 UNUSED=0 DIS=1 AND=0 LEN=5)

               +--Ost--+
         +-Ss*b+  +-Ds-+
         |     |  |    |
      this.p is.v a test.n

      2 is.v dj=Ss*b- Ost+  sense=be%2:42:02:: score=2.351568
      2 is.v dj=Ss*b- Ost+  sense=be%2:42:05:: score=2.143989
      2 is.v dj=Ss*b- Ost+  sense=be%2:42:03:: score=1.699292
      4 test.n dj=Ost- Ds-  sense=test%1:04:00:: score=0.000000
                     this.p      0.0  0.695 Wd- Ss*b+
                       is.v      0.0  7.355 Ss*b- Ost+
                          a      0.0  0.502 Ds+
                     test.n      1.0  9.151 Ost- Ds-


   Note that the sense labels are not terribly accurate; the verb "to be"
   is particularly hard to tag correctly.


BioLG merger:
-------------
   As of version 4.5.0 (April 2009), the most important parts of the
   BioLG project have been merged.  The current version of link-grammar
   has superior parse coverage to BioLG on all texts, including
   biomedical texts.  The original BioLG test suite can be found in
   data/en/4.0.biolg.batch.

   The following changes in BioLG have NOT been merged:
   -- Part of speech hinting. The BioLG code can accept part-of-speech
      hints for unknown words.
   -- XML I/O. The BioLG code can output parsed text in a certain
      idiosyncratic XML format.
   -- "term support".  Experiments from the 2007-2009 time-frame
      indicate these were useless.
   -- The link type CH. This was a large, intrusive, incompatible change
      to the dictionary, and it is not strictly required -- there is a
      better, alternative way of handling adj-noun-adj-noun chains commonly
      seen in biomedical text, and this has been implemented.

   All other BioLG changes, and in particular, extensive dictionary fixes,
   as well as regex morphology handling, have been incorporated.


Medical Terms Merger
--------------------
   Many, but not all, of the "medical terms" from Peter Szolovits have
   been merged into version 4.3.1 (January 2008) of link-grammar. The
   original project page was at:

       http://groups.csail.mit.edu/medg/projects/text/lexicon.html

   The following "extra" files were either merged directly, renamed, or
   skipped (omitted):

   /extra.1: -- merged
   /extra.2: -- skip, too big
   /extra.3: -- skip, too big
   /extra.4: -- /en/words/words-medical.v.4.2:
   /extra.5: -- /en/words/words-medical.v.4.1:
   /extra.6: -- /en/words/words-medical.adj.2:
   /extra.7: -- /en/words/words-medical.n.p
   /extra.8: -- skip, too big
   /extra.9: -- skip, random names
   /extra.10: -- /en/words/words-medical.adv.1:
   /extra.11: -- /en/words/words-medical.v.4.5:
   /extra.12: -- skip, too big
   /extra.13: -- /en/words/words-medical.v.4.3:
   /extra.14: -- /en/words/words-medical.prep.1
   /extra.15: -- /en/words/words-medical.adj.3:
   /extra.16: -- /en/words/words-medical.v.2.1:
   /extra.17: -- skip, too big

   To make use of the "skipped" files, download the original extension,
   gut the contents of "extra.dict" except for the parts referring to the
   skipped files above, and then append to 4.0.dict (as per original
   instructions).

   Its not at all clear that the "skipped" files improve parse accuracy
   in any way; they may, in fact, damage accuracy.
