> Where this is used a lot in python are constructors in GUI widgets were
> lots
> of default values can be set and you only need to provide those you wish
> to
> 'override'...and yes...order independence becomes relevant here too
> because you will have a hard time maintaining the order in your head for
> 20 or 30 parameters.  Granted, you could just implement this as
> subsequent calls to attribute getter/setters, but it's nice to be able
> to do it in widget construction.

I see your point.

I think that the named argument method that I outlined serves a slightly
different purpose to the one above.  The one I outlined gives the language a
way of calling methods based on set named parameters in a way similar to
Smalltalk and Objective-C.  The Python style call allows flexible
specification of named arguments and seems particularly useful in the
presence of default argument values.

The main thing for me is that the Python style named arguments must require
extra processing when calling a method with named arguments.

But there again, maybe that's the price you pay for flexibility.

--
Justin Johnson