Talin wrote:
> And on the calling side:
>
> def func2( adama, valeri, thrace ):
> ...
>
> func2( valeri='cylon', 'human', 'human' )
>
> In this case, however, I don't see why we can't have the keyword
> arguments out of order. In the above example, the 'valeri' parameter
> gets filled in first, and then the two remaining slots get filled in with
> the positional argumens.
The question to ask in this case is "Why change it?", rather than "Why not?".
In the case of allowing additional keyword arguments after *args, there's a
clear improvement in expressiveness. For function definitions, it permits
keyword-only arguments, for function calls it permits all positional arguments
to be supplied before any keyword arguments.
There isn't any comparable benefit in changing the positional-before-keyword
rule.
Cheers,
Nick.
--
Nick Coghlan | [EMAIL PROTECTED] | Brisbane, Australia
---------------------------------------------------------------
http://www.boredomandlaziness.org
_______________________________________________
Python-3000 mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-3000
Unsubscribe:
http://mail.python.org/mailman/options/python-3000/archive%40mail-archive.com