[Link Grammar] Link Grammar 4.6.7 in .Net

96 views
Skip to first unread message

proai

unread,
Apr 29, 2010, 7:39:04 PM4/29/10
to link-grammar
I origionally ported Link grammar 4.1b to .Net and I finally got a
later (abiword) build to work with my origional code. If any one is
interested, I can make the code available. It requires a little
tweaking of the released code to make it work (compile). Most
importantly you must build the projcect as a .lib instead of a .dll
and link it to my origional port.

I also have a completly .net version that is "mostly complete" (needs
a littly more debugging) that can handle the abiword dictionary if any
one is interested in finishing it (it somtimes gives a few extra links
compared to 4.1b [haven't tested it with an abiword dictionary since I
just got it to work from .NET])

--
You received this message because you are subscribed to the Google Groups "link-grammar" group.
To post to this group, send email to link-g...@googlegroups.com.
To unsubscribe from this group, send email to link-grammar...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/link-grammar?hl=en.

Linas Vepstas

unread,
Apr 29, 2010, 7:56:46 PM4/29/10
to link-g...@googlegroups.com
On 29 April 2010 18:39, proai <lch...@proai.com> wrote:
> I origionally ported Link grammar 4.1b to .Net and I finally got a
> later (abiword) build to work with my origional code.  If any one is
> interested, I can make the code available.  It requires a little
> tweaking of the released code to make it work (compile).  Most
> importantly you must build the projcect as a .lib instead of a .dll
> and link it to my origional port.

You missed a long discussion of what it takes to get Windows
to work. I was under the impression that the latest version will
compile spotlessly under Windows. If fixes are required, please
post them.

> I also have a completly .net version that is "mostly complete" (needs
> a littly more debugging) that can handle the abiword dictionary if any
> one is interested in finishing it (it somtimes gives a few extra links
> compared to 4.1b [haven't tested it with an abiword dictionary since I
> just got it to work from .NET])

Well, the later versions have extensive enhancements to the
dictionary, as well as assorted fixes to the source code. You
can't shouldn't mix old code and new dictionaries, due to changes
in handling of capitalization, punctuation, utf8, greek & roman
numbering, latinate terms (biology) etc.

--linas

Simon Stuart

unread,
Apr 30, 2010, 7:33:18 AM4/30/10
to link-g...@googlegroups.com


The latest SVN repository for the LGP builds under MSVC++ 2008 properly with only two actions on your part:

1) Follow the "Environment Variables" guide which I wrote and Linas kindly appended to the README file in the latest SVN
2) Rename the file file in the \link-grammar folder which has the extention ".in" (just remove the "in"from its filename).

That's all you need to do to get the non-JAVA version to build properly.

Regards,
Simon J Stuart

------Original Mail------
From: "proai" <lch...@proai.com>
To: "link-grammar" <link-g...@googlegroups.com>
Sent: Thu, 29 Apr 2010 16:39:04 -0700 PDT
Subject: [Link Grammar] Link Grammar 4.6.7 in .Net



____________________________________________________________________________
E-Mail scanned by Kaspersky Antivirus (Up To Date)

proai

unread,
Apr 30, 2010, 9:25:09 AM4/30/10
to link-grammar
I will admit, I did give up for several months and have not attempted
to use abiword version since 4.5.6. The main changes I had to do were
to delete the java project completly (didn't care enough to try to
get it to work), delete the reference to malloc-dbg.c , and add
#include <WinBase.h> to utilities.c.

My post was not claiming to have fixed the build, that is all you
guys, (thanks you so much), it was about offering a .net dll that will
work with your code. The changing to a .lib from a .dll is not to
make it compile, it is so it will work with my old version. I started
my post from the assumption you had already figured out how to make it
compile. Also my .net version will work with both versions of the
dictionary because it has a full lexical analysier, parser/compiler;
it uses "Irony". I worked on it for a couple of weeks until I got the
same time complexity of the origional link grammar. After rebuilding
it I realizied just how much optimization work Davy Temperley, Daniel
Sleator & John Lafferty put it to make it work so fast. I had to read
all of their papers of particular interest was "A robust parsing
algorithm for link grammars". It is still not 100% perfect it
routinly has one or two extra linkages for complicated sentences the
4.1b does not (I did not implement post processing but I still get
them with post processing turned off). I actually stopped working on
it to wait for a clean build from AbiWord (which I got, thanks again).

proai

unread,
Apr 30, 2010, 11:00:44 AM4/30/10
to link-grammar


Just to be clear, I am talking about two different things:

1) A .net wrapper around your 4.6.7 library using Managed C++.
2) a 100% c# version of link grammary, using just your dictionary or
the old 4.1b dictionary.

The 100% .net version is pre-alpha, but the managed c++ version has no
known issues. I am concidering writing a cli version an moving it to
visual studio 2010 but I have not done so yet.

Leonard

Simon Stuart

unread,
Apr 30, 2010, 11:11:02 AM4/30/10
to link-g...@googlegroups.com


Not a bad idea! I've written a Pascal wrapper for the standard 4.6.7 compiled DLL, not so difficult to do.... I imagine the benefit of a .NET-based wrapper would make it accessible to a broarder non-C developer base, even if I personally have a dislike of the .NET framework.

Nice work, nice idea!

Regards
Simon J Stuart

------Original Mail------
From: "proai" <lch...@proai.com>
To: "link-grammar" <link-g...@googlegroups.com>

Sent: Fri, 30 Apr 2010 08:00:44 -0700 PDT
Subject: [Link Grammar] Re: Link Grammar 4.6.7 in .Net


____________________________________________________________________________
E-Mail scanned by Kaspersky Antivirus (Up To Date)

--

Linas Vepstas

unread,
Apr 30, 2010, 11:11:24 AM4/30/10
to link-g...@googlegroups.com
On 30 April 2010 10:00, proai <lch...@proai.com> wrote:
>
>
> Just to be clear,  I am talking about two different things:
>
> 1)  A .net wrapper around your 4.6.7 library using Managed C++.

I can redistribute this as part of the standard link-grammar tarfile,
if you wish. I would have to be source only, plus whatever build
files and scripts & instructions needed to allow user to build it.

--linas
Reply all
Reply to author
Forward
0 new messages