From: Manuel Lanctot
> of exceptions. Basically, you'd need a dictionnary database with
> all the exceptions (I think there are around 10,000 syntax
> exceptions in French). And I guess French is not the worst
> language.
Here's a possible solution: (Note: I don't plan to impliment foreign
NV agreement, but one never knows.)
1) Provide a NounVerbPrintF() function that concatenates a string,
paying attention to where the strings were concatentated and doing
some NV checking.
2) Use heuristics to guess the form or the noun/verb. This will
only work 50-80% of the time, depending upon the language. (One of
them will need to be marked as "could be wrong", probably the
inserted string.)
3) Admit that you'll need an exceptions database of verb
declentions and noun forms. As you use the system, notice where
the heuristics mess up, add to the exceptions database.
The above technique is similar to how text-to-speech approaches
letter-to-sound rules.
> My point is: My MUD will be in English because I'm too lazy to
> write a completely new parser based on another language. But I
> figure coding one for Esperanto could be even easier than one in
> English. ;)
Unforuntately, the mythical Esperanto empire never conquered the
world.
The "I'm too lazy" is a very important point that has also popped up
in other responses. It has made me reconsider my intention to have a
NLP parser. While I can produce an infrastructure to do excellent
parsing in any language, I'd need other people (hobbyists) to
actually build the parsing database using the infrastructure. The
more I read of people's responses and examine the work involved for
porting the parser to another, the more I think that it "ain't gonna
happen".
Some numbers: If I search for non-english muds on MudConnector I get
62 hits, out of 1717 total. Non-english speakers make up more than
3.6% of the computer user population. Part of the reason that muds
aren't as common in non-English countries may be cultural, but part
of it is certainly the parser problems. 232 of the 1717 muds are
located outside english-speaking countries, which means there are
170 english-speaking muds in non-english-speaking
countries. (Barring cultural and parser problems, I'd expect at
least 50% (probably 66%) of muds to be non-english.)
Although NLP commands are ultimately more flexible, it may be better
for me to produce a point-and-click interface, perhaps like what
Travis Casey just described. I still want the flexibility of verbs,
so I may have an author-defined verb list (perhaps numbering in the
1000s) accessible by typing the first few letters of the verb. The
selected verb would inform the client if the user needs to click on
objects, or type in arbitrary text (For example: "Teleport to
<user>" needs an edit field for the user name.)
Mike Rozak
http://www.mxac.com.au