[215] in Coldmud discussion meeting
Re: match_template() needs help with consistancy
daemon@ATHENA.MIT.EDU (Thu Apr 28 14:59:36 1994
)
Date: Thu, 28 Apr 1994 12:12:03 -0600 (MDT)
From: the Lyncx <BRANDON@cc.usu.edu>
To: coldstuff@MIT.EDU
X-Vms-To: COLDSTUFF
<>> * The user generally doesn't want any processing to get in the way
<>> when it's not necessary; therefore, no processing at all is done on
<>> the last argument.
<
<> This is bad. It is bad quite simply because it means parsing is
<> handled differently in some cases than in others and it's not always
<> immediately obvious which is which. Rules should be consistent for
<> the entire match or not exist at all.
<
< I disagree. For user-level parsing, the primary job of the parser is
< to keep its nose out of the user's business (for examples of parsers
< which forget this rule, see Mush). Consistency is secondary; the user
< spends a lot of time in the parser and will learn its rules quickly
< enough.
I think Consistency is not secondary, when a user finds that rules apply only
in some circumstances and not others, they instantly begin to think it is
worlds more complex than it is. By getting a base level of consistancy it is
much easier to comprehend to a beginning user, especially the non-computer
literate type.
<> No, MOO parsing does not function this way (iobjstr quoting is
<> handled exactly the same as dobjstr quoting, the way it should be),
<> nor does anything else that I am familiar with.
<
< You are correct; it is Coolmud's verb-dobj-prep-iobj parsing which
< works the same way as Coldmud's "verb * prep *" template matching.
<
< Here are some examples of user commands which show why I prefer the
< "quote the whole argument or none of it" rule.
<
< @desc here as A sign on the road says, "Burma Shave."
< whisper The spy told me, "Ken sent me." to dave
<
< MOO mangles both of these.
This is true, I had not considered it. How about using some less common
character for specifying what should only be used as a wild match? This would
be somewhat against norms, but it would be easier. Perhaps a `text` which is
rarely ever used in writing, I would say ' but its nearly as common as " ...
(i.e.):
"f * dd * z" "f `dd f` dd f z" => ["f", "dd f", "dd", "f", "z"]
Just a thought.