Should the comma operator be removed in D2?
Yigal Chripun
yigal100 at gmail.com
Mon Nov 16 21:06:27 PST 2009
Robert Jacques wrote:
> On Mon, 16 Nov 2009 17:53:45 -0500, Stewart Gordon <smjg_1998 at yahoo.com>
> wrote:
>
>> dsimcha wrote:
>> <snip>
>>> Axe. Looks like the only things it's good for are making code
>>> undreadable and
>>> abusing for loop syntax to...
>>> Make code unreadable.
>> <snip>
>>
>> Suppose you want the increment of a for loop to change two variables
>> in parallel. I don't call that making code unreadable.
>>
>> Stewart.
>
> Yes the classic use case of the comma operator is multi-variable
> declarations/increments in a for loop.
This was argued before and as I and others said before, this is *not* a
use case for the comma separator.
e.g.
for (int a = 0, b = 1; condition(); a++, b++) {...}
int a = 0, b = 1 // this is a declaration and not an expression
a++, b++ // isn't assigned to any variable and can be treated as a tuple
the only use case that will break is if the two increments are dependent
on the order (unless tuples are also evaluated from left to right):
e.g.
a + 5, b + a //
I doubt it very much that anyone ever uses this, it's too unreadable to
be useful.
More information about the Digitalmars-d
mailing list