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

Reply via email to