Re: [exim] Does EXIM need a new scripting language? - YES

Page principale
Supprimer ce message
Répondre à ce message
Auteur: Wakko Warner
Date:  
À: exim-users
Sujet: Re: [exim] Does EXIM need a new scripting language? - YES
I did not CC anyone, however I do prefer to receive replies via CC (Yes I
like 2 copies!)

Marc Perkel wrote:
> OK - I want to throw out a proposal to make a major change to Exim - the
> scripting language. And before you all start screaming - the idea would
> be to leave the existing language in for compatibility.
>
> Why do this? because the scripting is not intuitive. I've been using
> this language for 4 years and I still don't get it - and I've written
> compilers and invented programming languages.
>
> Suppose I wanted to test to see if a header does not exist.
>
> condition = !def:h_X-Mail-from:
>
> or better:
>
> condition = not header_exists X-Mail-from:
>
> or this type of scripting should work:
>
> condition = $h_X-Mail-from: = ""
>
> It takes me hours to do what should take seconds. Of course when I moved
> from sendmail to Exim I though I died and went to heaven. But now - not
> quite heaven.
>
> Other Examples:
>
>  condition = "${if and { \
>                        {!eq {$interface_address}{127.0.0.1}} \
>                        {!def:h_X-Spam-Status:} \
>                        {!def:h_X-Mailman-host:} \
>                        {!eq {$received_protocol}{ctyme-spam-scanned}} \
>                        {!eq {$received_protocol}{local}} \
>                        } {1}{0}}"

>
> Should be:
>
> condition = ($interface_address = 127.0.0.1) and
>             (not header_exists(X-Spam-Status)) and
>             (not header_exists(X-Mailman-host)) and
>             ($received_protocol <> ctyme-spam-scanned) and
>             ($received_protocol <> local)

>
> It needs to read easy - be intuitive.


Hmm, why not just rip it all out and replace it with perl instead =)

I had thought about redoing the acl section to be more of a programming
language ala C--

(I heard of C-- some time ago which was a scriptish C without the need to
declare variables)

--
Lab tests show that use of micro$oft causes cancer in lab animals
Got Gas???