I think you all know my opinion on weird notations in languages that are
only known and used by a few 'elite' programmers -- yet are all-too-easily
misunderstood by less-practiced (or simply less-able or infrequent)
programmers...
 
:-)
 
Mike


  _____  

From: Erich Steinböck [mailto:erich.steinbo...@gmail.com] 
Sent: 04 September 2020 14:22
To: Open Object Rexx Developer Mailing List
Subject: Re: [Oorexx-devel] Short cutting logical operators


You're right.

I've often wondered whether a method call really *must* evaluate all its
arguments upfront.
What about lazy evaluation? Only evaluate an argument when it is actually
required, i. e. accessed for the first time?

On Fri, Sep 4, 2020 at 3:17 PM Rick McGuire <object.r...@gmail.com> wrote:


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


_______________________________________________
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel

Reply via email to