[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
The &
and |
logical operators do short-circuit logic.
That is, they stop processing their arguments when it's clear what the
result of the operation will be. For instance, if one of the arguments
of an &
evaluates to false
, there's no point in evaluating
the rest of the arguments. This means that you should put slow matches
(`body', `header') last and quick matches (`from',
`subject') first.
The indirection arguments (1-
and so on) will make their
arguments work on previous generations of the thread. If you say
something like:
... (1- (1- ("from" "lars"))) ... |
Then that means "score on the from header of the grandparent of the current article". An indirection is quite fast, but it's better to say:
(1- (& ("from" "Lars") ("subject" "Gnus"))) |
than it is to say:
(& (1- ("from" "Lars")) (1- ("subject" "Gnus"))) |