On Tue, 25 Mar 2014 15:25:42 -0400, ixid <[email protected]> wrote:
I think this should not be done. Note that even though code which is D
could reintroduce commas safely, C code will still exist at that time,
and likely need porting to D. The principle that C code should either
do the same thing, or not compile, would be violated.
What would be an example of C code that would compile in a D
where the comma operator was used for tuples? Also why is cut and
pasting C code to D so important? If it's non-trivial surely
people will just use extern C. If it's trivial they can make the
minor improvements necessary.
It's not so much that it's important that it works, it's important that if
it does work, it does the same thing.
Why? Because it's a stated goal of D. We want to be able to easily port C
code to D, without having silent errors.
I don't have examples, I don't use the comma operator for anything except
for loops. If there are no cases of legitimate C code that would compile
incorrectly in D, then my objection is not valid. In either case, I'm fine
with the proposal up to step 4. Changing the result of a comma expression
later would be debated at the time we wanted to introduce it again, and
that is going to be a long time in the future, there is no rush.
-Steve