ietf-mta-filters
[Top] [All Lists]

Re: extensions

1997-05-01 12:08:57
Chris Newman <Chris(_dot_)Newman(_at_)innosoft(_dot_)com> writes:
     d) Forbid extension control structures unless script also includes a
       "require <extension>" prior to their use.

  That doesn't help.  Consider

  if support "foo" then
        require "bar"
        bar "andrew.cmu.edu" then
            qux;
        elsif "cs.cmu.edu" then
            baz;
        else
            thud;
        endbar
  else
        # do it the old fashioned way
        # ...
  endif

  Okay, so there's a require.  You still lose - you have no idea what
that bar is doing.  You can't even tell that it's a control structure,
and not a command.  You don't know which else goes with your if.  It's
completely ambiguous without knowledge of the bar extension.

  In addition, that's a horrible way to design a language.  A parser
for the base language SHOULD be able to recognize any string in that
language with extensions.

  (As an aside, the example under require in the spec doesn't parse,
'cause require's a control structure, and control structures don't end
with ';'s.  :-)

  )Rob

<Prev in Thread] Current Thread [Next in Thread>