in reply to Re: A set of new operators. In keeping with the design of Perl?
in thread A set of new operators. In keeping with the design of Perl?

Thanks for the link juerd, I hadn't seen that discussion. However, I think that my idea is quite different to that proposal which suggested a short-hand for the trinary operator involving 3 operands.

eg. $var ??= $x : $y;

The operators I am seeking only involve 2 operands.

Too hard to remember ...

This: $var = $var op $expr ? $var : $expr;

becomes this: $var ?op:= $expr;

Is that hard to remember?

...and too ugly.

Agreed, they ain't beauiful. I was trying to retain the notions of the ternary and the operators and the assignment, but as they are no longer ternary, maybe the ? or the final = could be dropped:

# Instead of these these or these? $lvalue ?<:= $rvalue; $lvalue <:= $rvalue; $lvalue ?<: $rvalue; + $lvalue ?>:= $rvalue; $lvalue <=:= $rvalue; $lvalue ?>: $rvalue; + $lvalue ?<=:= $rvalue; $lvalue >:= $rvalue; $lvalue ?<=: $rvalue; + $lvalue ?>=:= $rvalue; $lvalue >=:= $rvalue; $lvalue ?>=: $rvalue; + $lvalue ?lt:= $rvalue; $lvalue lt:= $rvalue; $lvalue ?lt: $rvalue; + $lvalue ?gt:= $rvalue; $lvalue le:= $rvalue; $lvalue ?gt: $rvalue; + $lvalue ?ge:= $rvalue; $lvalue gt:= $rvalue; $lvalue ?ge: $rvalue; + $lvalue ?le:= $rvalue; $lvalue ge:= $rvalue; $lvalue ?le: $rvalue;

Examine what is said, not who speaks.
"Efficiency is intelligent laziness." -David Dunham
"When I'm working on a problem, I never think about beauty. I think only how to solve the problem. But when I have finished, if the solution is not beautiful, I know it is wrong." -Richard Buckminster Fuller