Date: Sun, 06 Apr 2003 07:09:40 -0700 (PDT)
From: ned(_dot_)freed(_at_)mrochek(_dot_)com
(1) The ${0}, ${1} all-digit variables should be set and modified by the
glob-style :matches mechanism in addition to :regex. It really should
not be necessary to implement regex in order to get the ability to
set variables based on message inputs. For example:
This leads to ambiguity, however.
What does:
envelope :detail :matches "to" "**"
or how about "*a*"?
do? Is it greedy?
Also, this draft might be a little surprising to implementors since
something like:
if header :regex "List-ID" ["<alpha(.*)@", "(.*)beta@"] {
fileinto "lists.${1}"; stop;
}
can no longer short circut due to:
"The decimal value of the numeric variable name will index the list of
matching strings from the each of the group operators in the latest
regular expression match."
So _all_ regular expressions have to be tried and the last of the
matches causes the binding.
(5) Other than we decide on something and stick with it, I have no
preference for modifier ordering.
Modifiers should be omitted from this specification. These are
functions; if we're going to define functions, fine. If not, fine.
There are many other problems with this draft, ranging from i18n
concerns: "Variable names are case insensitive." to ones that will
potentially significant problems later on ("All variables have global
scope.").
Larry