[MlMt] Is there any documentation on operator syntax?

Benny Kjær Nielsen mailinglist at freron.com
Thu Dec 5 05:51:52 EST 2013


On 4 Dec 2013, at 17:09, Kee Hinckley wrote:

> On 4 Dec 2013, at 9:57, Benny Kjær Nielsen wrote:
>
>> The sender of the message must not be equivalent to any of the Sent 
>> Messages senders.
>
> That's what I thought, but it doesn't seem to be working.
>
> 	  "m"     = ( "selectWithFilter:", "#thread-id = ${#thread-id} and 
> from.address !=[x] $SENT.from.address" );

Sorry, it must be:

	"m" = ( "selectWithFilter:", "#thread-id = ${#thread-id} and 
from.address !=[x] \\$SENT.from.address" );

The use of `$` for the universal mailbox name must be (double-)escaped 
to avoid it being interpreted as a variable for the format string.

> One final question and I need to go back to my real job.
>
> Is there an internal command like:
>
> 	"displayDialog:", "from.address"
>
> for debugging current values?

No. I'll keep it in mind.

> And have you ever thought about replacing the internal language with 
> Perl/Python/Ruby/...?

It's not that kind of language. It is more like a domain-specific 
database query language. Your question could instead by: Why not use 
SQL? The answer is that I did try that, but I needed more control of 
both the language (ease of use) and the implementation (performance).

The query language is only for building sets based on message values. In 
fact, every set of messages you see in MailMate is the result of a query 
(a few queries are just explicit sets of messages). Each IMAP mailbox is 
actually the result of a query for messages with a specific virtual 
`#source` header.

It's extremely flexible, but when people have performance problems with 
several 100K messages then they are also paying the price for this 
flexibility (and the lack of numerous optimizations still on my todo).

-- 
Benny
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freron.com/pipermail/mailmate/attachments/20131205/611c8895/attachment.html>


More information about the mailmate mailing list