[python] Guido o funkcich reduce(), filter() a map() v Python 3000

superman feed na centrum.cz
Čtvrtek Červen 26 13:44:08 CEST 2008


>
> Python je jazyk, který se používá v rychlostně kritických aplikacích. Né úplně doslova, nejnáročnější komponenty se píší v C případně C++ a Python slouží jako nástavba pro rychlý vývoj s těmito komponentami.
>   


Sám to popíráte - Python se nepoužívá v rychlostně kritických 
aplikacích, protože komponenty se pak píší v C, C++ a dalších jazycích 
orientovaných na rychlost. A toto vlákno se týká psaní kódu v Pythonu - 
a rychlost se tu objevila pouze v té souvislosti, že psaní na max. 
rychlost někdy (ale velmi velmi ukrutně zřídka, aby to tu někdo 
nepoužíval jako argument) ospravedlňuje hnusné změny a zásahy. A protože 
v Pythonu se nepíší rychlostně kritické věci (sám jsem napsal, že se 
tyto části napíší třeba v C), nejsou tyto věci ospravedlněním pro špatné 
zásahy pana Rosauma do Pythonu. Abych tak nějak polopaticky shrnul 
několik příspěvků a o co v nich šlo.


> Ale i tak jsou nároky na jeho rychlost obrovské a to že jeho rychlost
> převážně převyšuje ostatní interpretované jazyky je jeden z hlavních
> důvodů, proč je Python tak rozšířený. Za zmínku stojí třeba Google,
> které je postaveno převážně na kombinaci C/C++ a Python, stejně tak
> Seznam.cz, nebo třeba serverová farma MMORPG hry EVE Online. Rychlost
> je taky jeden z důvodů, proč se dělají některé změny v Python 3000 a
> proč nebude donekonečna zachovávána zpětná kompatibilita.
>   

Rychlost Pythonu převyšuje ostatní jazyky :-) Co já se tu nedozvím :-) 
Pravda je opačná, Python je jedním z nejpomalejších. Ale ono to nevadí, 
protože rychlost ve věcech, kde se nasazuje Python není kritická, 
alespoň ne v těch částech, kde se vykonává Python kód. Protože jinak by 
nasazení Pythonu byla špatná volba - skoro cokoli za jiný jazyk je lepší 
pokud jde o rychlost.

Síla Pythonu je jinde - je to jazyk s ukrutně rychlým vývojem programů. 
Jazyk s udržovatelným kódem, kde bez problémů můžete oprašovat milióny 
řádků a není problém.

A k několika konkrétním příkladům bych dodal - "jedna vlaštovka jaro 
nedělá". Mě nezajímá pár firem, co jí používá, mě zajímá kolik procent 
projektů jí používá. A upřímně velmi doporučuji také po čase udělat si 
graf procent a zhodnotit propad Pythonu v důsledku hrátek pana Rossuma. 
Ten propad už se totiž nevyrovná nikdy v budoucnosti. Nepolemizujte se 
mnou, ale sami si dejte dohromady skutečná data.

Mimochodem, úspěšně jsem složil test na vývojáře pro Google, takže něco 
vím. Hlavní, co požadují je Java, ocení C++, nějak kolem Pythonu se moc 
nemluvilo. Nakonec problém byl, že nejsem s to komunikovat plynule 
perfektní angličtinou po telefonu.

Ohledně her se záruky nepožadují. Jakpak dlouho se prodává hra? Rok? 
Dva? Určitě se kód hry neudržuje nijak dlouhou dobu oproti jiným 
odvětvím IT. Věřím, že tam Python a Rossum není problém. Znovu říkám, 
jako hračka a pro hraní, stejně tak na jednorázové věci není důvod 
Python nepoužít.

> Stejně stále nechápu, z čeho máte strach. Python už dnes není jen
> Guido, ale stojí za ním poměrně velká nadace, sponzoři a vývojáři
> Pythonu a komunita vývojářů v Pythonu. Guido neupravuje a ani nemůže
> upravovat Python jen tak podle toho, co ho zrovna napadne. Ani změny
> ve verzi Python 3000 nejsou jen jeho výmysl. Má sice poměrně velké
> slovo, ale když by zblbnul, tak se bez něj obejdou. Proto bych se
> nebál, že se z Pythonu stane nějaký nepoužitelný balast.
>   

He he, tak teď koukám a hledím. Právě teď Rossum dlouhou dobu blbne. Ne 
kdyby zblbnul, on teď dlouhodobě blbne! A nikdo nezasáhne. Kdyby kdokoli 
takhle blbnul v případě komunity třeba Fortranu, C, C++, Javy, Ady, C#, 
a vůbec většiny jazyků, byl by Rossum odstaven coby dup a ještě by všude 
o něm psali jako o pomatencovi. To píšu zcela bez emocí, protože tak by 
to bylo.

Ve světle současných událostí věty jako "proto bych se nebál" považuji 
za utopii.

Miloslav Ponkrác




Další informace o konferenci Python