There was an argument made that we should not allow templates and procedure names to be the same in a given scope, so advance instantiation of a standalone template procedure must rename it. With that change there was no longer the argument that the syntax is ambiguous when parentheses are used for template arguments, which was motivating the usage of {}
. It’s worth noting that until last meeting (February) we had been using parentheses, not curly braces.
Without an argument that we needed to use the only pair of brackets we have left for this feature, the committee decided we should go back to using parentheses. However, given the possibility of nesting inline instantiation, the committee felt an extra character to signal it happening was warranted.
Yes, and these papers were. The only changes we made to them during the meeting were relatively minor compared to the feature as a whole. I.e. specific symbols and some spelling of keywords. I’ll admit this is a potentially contentious/controversial one, but it’s not a substantial one.
I don’t think it is a big change, because it’s just the symbols used, not any reorganization or extra constraints. Controversial perhaps, but not big.
I’m sympathetic to the argument that we should have stuck with {}
. It is still my preferred choice, but neither I nor any other one person gets to make that choice. It’s a committee and those in attendance get to vote on it. That said, it’s still not set in stone (actual edits to the standard haven’t been made yet), and if there is a real ground-swell of support from the broader community (write to your representative/compiler vendor sort of thing), this is still pretty easy to change. Also, the standards body doesn’t actually have any real power over implementors, so if they all decided to allow curly braces as an alternative the committee couldn’t stop them and then would have to deal with the reality on the ground. The community does still have the final say in some sense.
It’s design by committee. It will never be perfect. We are doing our best to at least find the things that make people the least unhappy while at the same time being able to make progress. We’re all volunteers, and none of us can work on this full time, so for those of you complaining about this or any other decision the committee makes, I, and I think all the members of the committee, would appreciate if you could grant us at least some amount of understanding on that front. Criticism and feedback are fine and welcome, but expecting perfection and full conformance with your specific vision is unreasonable, as is accommodation for your feedback before making decisions if you’re not willing/able to attend the meetings.
Hopefully the above answers some questions. If you do still have some constructive and polite feedback, I’m happy to hear it and take it back to the committee.