I know that OpenNLP is currently Java-centric, so I
wanted to bounce this idea around.
For the course I was co-teaching (with Bob Moore) at Stanford last quarter, I implememented a bunch of parsers and generators for a simple DCG-like grammar formalism. This includes top-down, bottom-up, left-corner parsers, plus chart-based versions of the above, plus three generation algorithms (bottom-up chart-based generation, semantic-head driven generation, and an A*
generator), plus two robust parsers (a Gemini-style
bottom-up parser, and an Aho&Peterson style
minimal edit-distance parser). In another
week or so, I should have 3 large grammars
ported to this representation.
So, it seems like this would be a nice resource
to include in OpenNLP, but I am not sure where
it would go. These aren't intended to be
"industrial strength" parsers, but some of them
aren't bad. I also haven't yet ported them
to an open-source Prolog, so it would require
SICStus Prolog to compile/run them.
Any suggestions?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I don't think we should enforce a particular programming language paradigm on all OpenNLP projects. If things can work together, great, but one of the main points of OpenNLP is just to get different open source developers of NLP projects talking, and let them link up their code if and when they want to.
I think the best thing to do in this case would be to start a new sourceforge project and put the code there. It could be something like "OpenNLP DCG Prolog". Another option, however, is to have a different CVS module and continue using this project space. Either way is fine with me, really.
I just had a look at the tuprolog project, and I really wish it had existed a year ago. Would have made my life a lot easier when I was creating Leo (http://leonlp.sf.net), where I had to parse the Prolog terms of Gemini grammars and use them in Java...
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I know that OpenNLP is currently Java-centric, so I
wanted to bounce this idea around.
For the course I was co-teaching (with Bob Moore) at Stanford last quarter, I implememented a bunch of parsers and generators for a simple DCG-like grammar formalism. This includes top-down, bottom-up, left-corner parsers, plus chart-based versions of the above, plus three generation algorithms (bottom-up chart-based generation, semantic-head driven generation, and an A*
generator), plus two robust parsers (a Gemini-style
bottom-up parser, and an Aho&Peterson style
minimal edit-distance parser). In another
week or so, I should have 3 large grammars
ported to this representation.
So, it seems like this would be a nice resource
to include in OpenNLP, but I am not sure where
it would go. These aren't intended to be
"industrial strength" parsers, but some of them
aren't bad. I also haven't yet ported them
to an open-source Prolog, so it would require
SICStus Prolog to compile/run them.
Any suggestions?
It would be nice if we could keep everything compatible. How much work would it be to use one of the prolog implementations in Java (either http://sourceforge.net/projects/tuprolog/ or http://sourceforge.net/projects/jlogic/\)? There are lots of other Java prologs but I've only found these two which are open source.
I don't think we should enforce a particular programming language paradigm on all OpenNLP projects. If things can work together, great, but one of the main points of OpenNLP is just to get different open source developers of NLP projects talking, and let them link up their code if and when they want to.
I think the best thing to do in this case would be to start a new sourceforge project and put the code there. It could be something like "OpenNLP DCG Prolog". Another option, however, is to have a different CVS module and continue using this project space. Either way is fine with me, really.
I just had a look at the tuprolog project, and I really wish it had existed a year ago. Would have made my life a lot easier when I was creating Leo (http://leonlp.sf.net), where I had to parse the Prolog terms of Gemini grammars and use them in Java...