[Python-Dev] Re: Source-level backward compatibility requirements -logging and apply() - addendum

Aahz aahz at pythoncraft.com
Tue Dec 9 12:29:45 EST 2003


On Tue, Dec 09, 2003, Guido van Rossum wrote:
>Fredrik
>>
>> in my experience, you always lose your audience when you introduce the
>> callable(*args, **kwargs) syntax, and you don't get them back until you
>> explain that the notion is apply(callable, args, kwargs).
> 
> Maybe it depends on the audience?
> 
> In my experience (admitted it was a while ago), the desire to call a
> function with arguments that are already given as an array often comes
> to relative newbies who've never heard of apply in any other language
> (isn't it a Lisp thing?).  

There's also the issue that IME teaching apply() usually comes after
teaching

    def foo(*args, **kwargs):

which makes the symmetry easier to understand, IMO.
-- 
Aahz (aahz at pythoncraft.com)           <*>         http://www.pythoncraft.com/

Weinberg's Second Law: If builders built buildings the way programmers wrote 
programs, then the first woodpecker that came along would destroy civilization.



More information about the Python-Dev mailing list