[MUD-Dev] Re[2]: [MUD-Dev] Text Parsing

Travis Casey efindel at io.com
Wed Jun 2 21:20:40 CEST 1999


On Wednesday, June 02, 1999, Ola Fosheim Grøstad wrote:
> "Travis S. Casey" wrote:
>> On Wed, 2 Jun 1999, Katrina McClelan wrote:
>>
>> > a huge hoard of orcs spot you and reach for their weapons with a snarl.
>> > -> take off running away from the orcs.
>> >
>> > -> put on cloak.
>> > you put on the white cloak.
>> > -> look around.
>> > an off white cloak lies on the ground here.
>> > -> take off white cloak.
>> >
>> > (If you have a parser that will not blarf all over any of these, I'm
>> > _much_ impressed)
>>
>> Depends on what you mean by "blarf".  My own parser would have done the
>> intended thing for all but "take off running away from the orcs."

> Intended by whom???  Certainly not the user:

> [take off] [white cloak]
> [take] [off white cloak]

Ah... I see.  I hadn't noticed in the example that the first cloak the
character put on was white.  Sorry.

Obviously, no parser can read the user's mind, so "take off white
cloak" is impossible to be certain of when there is an "off white
cloak" in the room and the user is wearing a "white cloak".

My parser did, however, support the use of parentheses to make
commands more clear -- thus, you could do:

  take (off white cloak)
or
  take off (white cloak)

Pedantically, though, one could lay the blame on the builder:
according to Webster's it's "off-white", not "off white".  :-)

> Basically you would need to either reserve the keyword "off", require single
> word commands, make an arbitrary choice or be "context sensitive" (take
> prior actions into consideration):

There are two more choices:

 - Ask the user which is intended:

    Do you want to:  1.  take the off white cloak
       or            2.  take off the white cloak
    >

 - Or report an error and let the user try again.

    Input ambiguous.  Cannot tell if you mean "take off the white
    cloak" or "take the off white cloak".  Please try again.
    >

These have the added bonus that they help teach the user how to make
his/her commands less ambiguous, by giving examples of how the
commands could have been entered so that they were not ambiguous.

>>  - There's a long way between trying to improve mud parsers by making use
>>    of NLP ideas and trying to implement full "natural language" input.

> It is still a question if it is an improvement over a well thought out and
> well defined interface.  I am particularly unhappy about dumb first-fit
> searches.

Then don't use them.  You can still make use of such ideas as
recognizing multiple forms of the same command ("give joe the cloak"
and "give the cloak to joe"), allowing lists ("get sword, box, and
cloak"), etc.

My point is that you don't have to use any part of NLP that you don't
want to.  Personally, for example, I don't like using "and" or "then"
to allow multiple commands on one line -- if you want to enter
multiple unrelated commands, I don't see how typing five or six
characters instead of one (" and " or " then " versus a carriage
return) makes anything simpler.

Just because we're discussing something about how to do input doesn't
mean that we're telling other people they have to, or even should, do
their input this way.  Take the ideas that interest you and leave the
ones that don't.  If none of them interest you, then you can ignore
them all.

--
       |\      _,,,---,,_        Travis S. Casey  <efindel at io.com>
 ZZzz  /,`.-'`'    -.  ;-;;,_   No one agrees with me.  Not even me.
      |,4-  ) )-,_..;\ (  `'-'
     '---''(_/--'  `-'\_)




_______________________________________________
MUD-Dev maillist  -  MUD-Dev at kanga.nu
http://www.kanga.nu/lists/listinfo/mud-dev




More information about the mud-dev-archive mailing list