Hmmm, I found an awkward bit with this proposal. For the operators, these
are all transformed into method calls under the cover, so "a | b" gets
executed as "a~'|'(b)", where the object on the left hand side does the
evaluation of the condition. This allows any class to override the '|' and
'&'. With the overrides, the evaluation needs to be handled directly by the
operator code because there's no way to delay evaluation of a method
argument, and it would be very difficult to allow something like that to
exist. I'm not sure I'm comfortable with '*|' and '*&' be special cases as
operators.

Rick

On Fri, Sep 4, 2020 at 9:03 AM Rick McGuire <object.r...@gmail.com> wrote:

> There's been a bit of a discussion about the short-cutting conditional
> lists implemented by IF, WHEN, et al. I find that construct very useful,
> but as the discussion on the list has revealed, it has its limitations.
>
> It would actually be fairly trivial to implement AND and OR operators that
> can do short-cut evaluation. Of course, this is not possible for XOR, which
> always requires both values. The real questions are 1) should it be done
> and 2) what should the operator be. I've been tentatively using *& and *|
> in my thinking about this, but there are certainly other possibilities.
>
> Rick
>
_______________________________________________
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel

Reply via email to