On 2011-06-10 14:28, Andrej Mitrovic wrote: > On 6/10/11, Lutger Blijdestijn <lutger.blijdest...@gmail.com> wrote: > > Changing a name will now break client code. > > The flag template suffers from the same issue.
Not really. There's a big difference between changing the type name and changing the parameter name. You can freely change the parameter name without changing the type name. Also, you can overload on type names, allowing you to deprecate the old name and replace it with a new one gradually. You _can't_ overload on parameter names, so you _can't_ have a deprecation path with named arguments without renaming the function itself, which is _way_ worse. The difference between the two isn't even comparable. - Jonathan M Davis