[EMAIL PROTECTED] (Josh Harding) writes:
> Paul Sandoz wrote:
> >         It is possible to extend expression types to include
> >         an N peer boolean expression that contains a list of
> >         expressions and applies the same operator to each.
> > 
> >         Like a 'flatened' part of a binary tree:
> >         'if (a | b | c | d)' instead of 'if (a | (b | (c | d)))'
> > 
> >         (There are probably logical precedence rules to automatically
> >         work out this sort of thing from a binary tree and group
> >         leaf nodes. I bet its a one liner is lisp!).
> > 
> >         Attached is some idl, does this 'express' a boolean
> >         expression model for the GUI use cases you and
> >         Matthew have 'expressed'?
> 
> That looks good to me.  Just to see if I understand... would the unary
> node type be used for the leaf nodes in the tree?  where you'd have a
> field name, a condition and a value?  e.g.("Sender", "contains",
> "spambot")   Since you have an NPeer node, isn't the Binary node just a
> special case of that?  Would it make things simpler to not have a Binary
> node type and just use Unary and NPeer?  Or maybe I'm overlooking
> something.

No, unary is for operators that only take one operand (eg NOT).  In fact,
not only is Binary not strictly necessary because it's a special case
of NPeer, Unary isn't really necessary either, for the same reason.

Dan


-- 

Reply via email to