[python] Brainstorm request: Vyuka programovani na gymplu

superman feed na centrum.cz
Sobota Červen 14 01:00:34 CEST 2008


>
> No vidite, a prave tohle prijde nelogicke zase mne. Pokud predefinuji 
> tridu str, cekal bych, ze dalsi instance teto tridy bude pouzivat moji 
> customizaci.
>
> Nerikam,ze je takove chovani prakticke, kazdopadne priklad, ktery jsem 
> pred par dny konstruoval mel ukazat, ze ona "jednotnost pristupu" 
> plati, ale jen do urcite miry. Pak se zacnete ucit ruzne speciality 
> pythonu, tj. proc se to chova tak a ne jinak - stejne, jako v 
> kteremkoliv jinem jazyce, napriklad v Jave (Groovy).
>
Já bych řekl takto - existuje jako jeden extrém jazyky dokonale logické, 
kde se věci řídí selským rozumem, a vše se řídí jednoduchými pravidly, 
které platí bez výjimky a pak jako druhý extrém jazyky nelogické, kde se 
to celé musíte do posledního puntíku našprtat zpaměti a nevěřit logice. 
Java se velmi blíží druhému extrému spolu se vším, co je kolem ní 
vybudováno, Python se velmi blíží prvnímu. Pro výuku považuji za 
nejlepší jazyk spíše prvního typu.

Neexistuje jazyk totálně bez toho, aniž by neměl nějakou věc, která by 
se dala zlepšit. Je to jenom otázkou míry.


>
>     Jenže Python když narazí na úvozovky neprohledává lokální
>     namespace, jestli tam náhodou není něco, co se jmenuje
>     str a co by mohl použít, což by ani nešlo, protože
>
>
> Polozme si otazku "a proc ne?"...
>
Protože to nedělá žádný programovací jazyk, naprosto žádný. Ač Python 
není bez vady, tohle je lichá střelba. Prostě řetězec v uvozovkách je 
literál - tedy konstanta předem daného typu určeného syntaxí jazyka (bez 
ohledu na to, zda si jiný typ nazvete stejně v jiném namespace) a takhle 
to funguje v naprosto všech programovacích jazycích všetně Javy. Přiznám 
se, že nechápu moc Vaší otázku "a proč ne?".

> Nechci strilet do pythonu - mam ho rad. Jen nemam rad prilis 
> nekriticke nazory a naopak shazovani "konkurence".
>
S tím souhlasím - nicméně chce to střelbu na správná místa.

Miloslav Ponkrác




Další informace o konferenci Python