[Top] [All Lists]

Comment on draft-showalter-sieve-02.txt

1997-10-29 07:49:28
I have a comment on draft-showalter-sieve-02.txt chapter 3.2. Require,
Page 15:

Is there a good reason why the the "require" declaration exists?
Can someone provide a good argument or two?
I have some arguments for removing it.

1. Terminating a script because it may or may not use an extension later
on seem to be a rather exotic need. Too exotic for requiring (!) a
separate declaration?

2. The "require" declaration can become an unecessary source of
confusion when debugging a faulty script. The relation, or perhaps the
connection, between the "require" declaration and the extension call is
not that obvious.

3. For a programmer (like me :-), a better approach to address problems
like extensions is by introducing a basic exception handling. I know,
it's not a programming language in that sense. But I cannot restrain
myself from giving you an example of exception handling, using the
excellent programming language called Python:

if header ("subject") contains-nocase ("the secret message")
    dwim blurdybloop body
  except ActionNotFound:
    keep # leave it alone

Note that Python is indentation sensitive, an alternative to "{}". Some
may regard it cleaner, other's may not. Anyway, the try-except
(try-catch in C++) mechanism is a powerful tool for providing clean
programming in modern programming languages.

4. The "support" conditional test seem adequate in most cases. May be
that is sufficient for our needs.


Tomas Fasth

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