Re: [python] "list comprehension" -- prozatimni zaver

2010-04-19 Thread MICHÁLEK Jan Mgr .
To samozřejmě může. Já si ale nemůžu pomoct, ten seznamátor mi zní děsně 
nelibozvučně - šroubovaně. Koneckonců sou to jen písmenka, kdo chce ve věcech 
hledat oplzlostě, ten je najde uplně všude.

  _  

From: python-boun...@py.cz [mailto:python-boun...@py.cz] On Behalf Of Petr Mach
Sent: Thursday, April 15, 2010 7:44 PM
To: Konference PyCZ
Subject: Re: [python] "list comprehension" -- prozatimni zaver


Odvazat se clovek muze prece i bez vulgarity, ne?


2010/4/14 MICHÁLEK Jan Mgr. 


Když se odvázat, tak pořádně, co takhle seznamrdka

  _  

From: python-boun...@py.cz [mailto:python-boun...@py.cz] On Behalf Of Petr Mach
Sent: Sunday, April 11, 2010 9:26 AM
To: Konference PyCZ
Subject: Re: [python] "list comprehension" -- prozatimni zaver


Přesně tak, teď to zní nezvykle a legračně, ale tak tomu bylo u řady slov, na 
které
jsme si už zvykli a už nám nám to ani nepříjde. 


2010/4/1 Přikryl Petr 



Petr Mach

>
> Trochu se odvažte, nazvěte to seznamátor a je to :-).


No, dobrý nápad. A ty ostatní se budou jmenovat
slovníkátor a množinátor. A nadpis bude "-átory".
Nebo zobecníme na "dělátory"? :)))




__ Informace od ESET NOD32 Antivirus, verze databaze 5030 (20100415) 
__


Tuto zpravu proveril ESET NOD32 Antivirus.


http://www.eset.cz


__ Informace od ESET NOD32 Antivirus, verze databaze 5030 (20100415) 
__


Tuto zpravu proveril ESET NOD32 Antivirus.


http://www.eset.cz


__ Informace od ESET NOD32 Antivirus, verze databaze 5039 (20100418) 
__


Tuto zpravu proveril ESET NOD32 Antivirus.


http://www.eset.cz

___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python

Re: [python] "list comprehension" -- prozatimni zaver

2010-04-15 Thread Přikryl Petr
Když mi bylo asi 9 let, bruslil jsem po škole na čerstvě zamrzlém rybníku. V 
jednom místě byly nahromaděné řasy, takže tam led nebyl nejkvalitnější. Na 
kamarády jsem ještě stihnul vykřiknout "Ku*va, tady to rupe!". A už to bylo.
Tou dobou se totiž tata vracel z práce a zkracoval si to přes rybník. A jak mě 
slyšel, tak mi jednu majznul, že jsem sebou rupnul já.
Od té doby jsem o tom začal víc přemýšlet. A děkuju tatovi, že jsem díky tomu 
na to přišel tak brzo ;)
Petr 
Od: Petr Mach
Přijato: 15.4.2010 19:51:51
Předmět: Re: [python] "list comprehension" -- prozatimni zaver
Odvazat se clovek muze prece i bez vulgarity, ne?
2010/4/14 MICHÁLEK Jan Mgr. 
Když se odvázat, tak pořádně, co takhle seznamrdka
From: python-boun...@py.cz [mailto:python-boun...@py.cz] On Behalf Of Petr Mach
Sent: Sunday, April 11, 2010 9:26 AM
To: Konference PyCZ
Subject: Re: [python] "list comprehension" -- prozatimni zaver
Přesně tak, teď to zní nezvykle a legračně, ale tak tomu bylo u řady slov, na 
které
jsme si už zvykli a už nám nám to ani nepříjde. 
2010/4/1 Přikryl Petr 
Petr Mach
>
> Trochu se odvažte, nazvěte to seznamátor a je to :-).
No, dobrý nápad. A ty ostatní se budou jmenovat
slovníkátor a množinátor. A nadpis bude "-átory".
Nebo zobecníme na "dělátory"? :)))
___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python

Re: [python] "list comprehension" -- prozatimni zaver

2010-04-15 Thread Petr Mach
Odvazat se clovek muze prece i bez vulgarity, ne?

2010/4/14 MICHÁLEK Jan Mgr. 

>  Když se odvázat, tak pořádně, co takhle seznamrdka
>
>  --
> *From:* python-boun...@py.cz [mailto:python-boun...@py.cz] *On Behalf Of *Petr
> Mach
> *Sent:* Sunday, April 11, 2010 9:26 AM
> *To:* Konference PyCZ
> *Subject:* Re: [python] "list comprehension" -- prozatimni zaver
>
> Přesně tak, teď to zní nezvykle a legračně, ale tak tomu bylo u řady slov,
> na které
> jsme si už zvykli a už nám nám to ani nepříjde.
>
> 2010/4/1 Přikryl Petr 
>
>>
>> Petr Mach
>> >
>> > Trochu se odvažte, nazvěte to seznamátor a je to :-).
>>
>> No, dobrý nápad. A ty ostatní se budou jmenovat
>> slovníkátor a množinátor. A nadpis bude "-átory".
>> Nebo zobecníme na "dělátory"? :)))
>>
>
___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python

Re: [python] "list comprehension" -- prozatimni zaver

2010-04-14 Thread MICHÁLEK Jan Mgr .
Když se odvázat, tak pořádně, co takhle seznamrdka

  _  

From: python-boun...@py.cz [mailto:python-boun...@py.cz] On Behalf Of Petr Mach
Sent: Sunday, April 11, 2010 9:26 AM
To: Konference PyCZ
Subject: Re: [python] "list comprehension" -- prozatimni zaver


Přesně tak, teď to zní nezvykle a legračně, ale tak tomu bylo u řady slov, na 
které
jsme si už zvykli a už nám nám to ani nepříjde. 


2010/4/1 Přikryl Petr 



Petr Mach

>
> Trochu se odvažte, nazvěte to seznamátor a je to :-).


No, dobrý nápad. A ty ostatní se budou jmenovat
slovníkátor a množinátor. A nadpis bude "-átory".
Nebo zobecníme na "dělátory"? :)))

___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python




__ Informace od ESET NOD32 Antivirus, verze databaze 5012 (20100409) 
__


Tuto zpravu proveril ESET NOD32 Antivirus.


http://www.eset.cz


__ Informace od ESET NOD32 Antivirus, verze databaze 5019 (20100412) 
__


Tuto zpravu proveril ESET NOD32 Antivirus.


http://www.eset.cz


__ Informace od ESET NOD32 Antivirus, verze databaze 5026 (20100413) 
__


Tuto zpravu proveril ESET NOD32 Antivirus.


http://www.eset.cz

___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python

Re: [python] "list comprehension" -- prozatimni zaver

2010-04-11 Thread Petr Mach
Přesně tak, teď to zní nezvykle a legračně, ale tak tomu bylo u řady slov,
na které
jsme si už zvykli a už nám nám to ani nepříjde.

2010/4/1 Přikryl Petr 

>
> Petr Mach
> >
> > Trochu se odvažte, nazvěte to seznamátor a je to :-).
>
> No, dobrý nápad. A ty ostatní se budou jmenovat
> slovníkátor a množinátor. A nadpis bude "-átory".
> Nebo zobecníme na "dělátory"? :)))
>
> ___
> Python mailing list
> Python@py.cz
> http://www.py.cz/mailman/listinfo/python
>
___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python

Re: [python] "list comprehension" -- prozatimni zaver

2010-04-02 Thread Jan Jakubuv
On Thu, Mar 25, 2010 at 11:38:15PM +, Přikryl Petr wrote:
> Jan Bednařík napsal (rozlámal jsem a doplnil číslování kvůli odkazům)
> > 5) "list comprehension" je pojem používaný 
> > v informatice desítky let. To že ho ještě nikdo 
> > nějak rozumně nepřeložil do češtiny (tím myslím překlad 
> > který by se uchytil) asi o něčem vypovídá. Myslím si, 
> > že jakákoliv snaha tento pojem přeložit si vyžádá širší 
> > akademickou diskusi přesahující komunitu okolo jazyka 
> > Python. Zkusil bych se poptat odborníků na fakultách 
> > informatiky zdejších vysokých škol. Třeba někde 
> > vymysleli a používají nějaký rozumný překlad.

Kdyz sem na MFF chodil na prednasky tak se termin “list comprehension” v
Haskellu prekladal jako

strucny seznam

Zajimave, ze diskuze o prekladu tohoto terminu se tady objevuje periodicky.
Ja sam jsem v teto konferenci v roce 2002 obhajoval vyse zmineny preklad.
Pozdeji jsem to vzdal ;-)

honza.



-- 
Heriot-Watt University is a Scottish charity
registered under charity number SC000278.

___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python

Re: [python] "list comprehension" -- prozatimni zaver

2010-04-01 Thread Martin Stiborský
Udělátka !

2010/4/1 Přikryl Petr :
>
> Petr Mach
>>
>> Trochu se odvažte, nazvěte to seznamátor a je to :-).
>
> No, dobrý nápad. A ty ostatní se budou jmenovat
> slovníkátor a množinátor. A nadpis bude "-átory".
> Nebo zobecníme na "dělátory"? :)))
>
> ___
> Python mailing list
> Python@py.cz
> http://www.py.cz/mailman/listinfo/python
>



-- 
S pozdravem
Martin Stiborský

Jabber: st...@njs.netlab.cz
___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python


Re: [python] "list comprehension" -- prozatimni zaver

2010-04-01 Thread Přikryl Petr
 
Petr Mach
>
> Trochu se odvažte, nazvěte to seznamátor a je to :-).

No, dobrý nápad. A ty ostatní se budou jmenovat
slovníkátor a množinátor. A nadpis bude "-átory".
Nebo zobecníme na "dělátory"? :)))
___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python

Re: [python] "list comprehension" -- prozatimni zaver

2010-04-01 Thread Petr Mach
Trochu se odvažte, nazvěte to seznamátor a je to :-).
___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python

Re: [python] "list comprehension" -- prozatimni zaver

2010-03-29 Thread Přikryl Petr


>-
>Od: 
>Přijato: 29.3.2010 14:06:30
>Předmět: Re: [python] "list comprehension" -- prozatimni zaver
>
>rmik...@pss.sk napsal(a), dne 29.3.2010 13:50:
>
>> Slovo "comprehension" ma vseobecne asi viac vyznamov.
>> Ja by som preto "list comprehension" neprekladal, ale 
>> by som to radsej popisal (napriklad ako poznamku 
>> prekladatela) asi takto [...]

Ono to ale vždycky opisem nejde. Potřebujeme rozumný pojem.
Dám konkrétní příklad. Název jedné kapitoly té knihy zní...

   Comprehensions

A teď babo raď.

Navíc, slovo comprehension má ve spojení list comprehension
zcela jasný význam.

>> Ja som kedysi tomu co je "list comprehension" tiez nerozumel a pamatam 
>> si, ze prave Vy ste mi to pred par rokmi vysvetlil v tejto konferencii 
>> nejakym podobnym sposobom :-)

;) No, ale tenkrát ten rozbor končil pojmem "generátor seznamu", 
který je pro českého/slovenského čtenáře určitě pochopitelnější,
než původní list comprehension.

Pavel Kosina reagoval
> 
> Právě že toto je nevýhoda [nechat list comprehension]. Je lepší, 
> když slovo nebo slovní spojení dávají alespon nějaký nástin 
> samostatného pochopení v daném jazyce. Nebo se vám pak taky 
> může stát, že se oborový jazyk stane snůškou cizojazyčných názvů.
> Bude to pak vypadat děsně složitě, lidé budou vnímat obor 
> jako něco velmi  nepřístupného. A to je přesný opak toho, o 
> co jde, že?

Tak, tak. To je to, o co tady jde. ;) Díky za podporu.

A díky taky Davidovi Rohlederovi za pochopení a protipříklady
do diskuse.

Mějte se fajn, 
pepr



___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python

Re: [python] "list comprehension" -- prozatimni zaver

2010-03-29 Thread Pavel Kosina

rmik...@pss.sk napsal(a), dne 29.3.2010 13:50:

Ja by som preto "list comprehension" neprekladal, [...]

Ja som kedysi tomu co je "list comprehension" tiez nerozumel a pamatam 
si, ze prave Vy ste mi to pred par rokmi vysvetlil v tejto konferencii 
nejakym podobnym sposobom :-)


Právě že toto je nevýhoda. Je lepší, když slovo nebo slovní spojení 
dávají alespon nějaký nástin samostatného pochopení v daném jazyce. Nebo 
se vám pak taky bude stát, že se oborový jazyk stane snůškou 
cizojazyčných názvů. Bude to pak vypadat děsně složitě, lidé budou 
vnímat obor jako něco velmi  nepřístupného. A to je přesný opak toho, o 
co jde, že?




--
geon
Pavel Kosina

___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python


Re: [python] "list comprehension" -- prozatimni zaver

2010-03-29 Thread David Rohleder
rmik...@pss.sk píše v Po 29. 03. 2010 v 13:50 +0200:
> Slovo "comprehension" ma vseobecne asi viac vyznamov. Ja by som preto
> "list comprehension" neprekladal, ale by som to radsej popisal
> (napriklad ako poznamku prekladatela) asi takto: 
> 
> 
> Zoznamy sa daju vytvarat aj pomocou skratenej notacie (zrejme
> pochadzajucej z mnozinovej notacie v matematike). V anglictine sa
> tento postup nazyva "list comprehension". 
> 
> >>> [i for i in range(1,5)] 
> [1, 2, 3, 4] 
> 
> 
> Toto citatel urcite pochopi a dalej uz mozete v celom texte pracoval
> iba s pojmom "list comprehension".  To bude mat aspon 2 vyhody: 
> 1. Citatel sa neskor lahko zorientuje aj v originalnom anglickom texte
> (napr. v dokumentacii) 
> 2. Vy nebudete musiet kazdy vyskyt tohoto pojmu v texte prekladat
> znova do cestiny. 


Na tomto způsobu je dost blbé to, že se nedá skloňovat, navíc je
nepříjemné při čtení přecházet z českého seznam na anglický list. Kniha
má být taky čitelná :-)

D.


___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python


Re: [python] "list comprehension" -- prozatimni zaver

2010-03-29 Thread RMiklos
Slovo "comprehension" ma vseobecne asi viac vyznamov. Ja by som preto 
"list comprehension" neprekladal, ale by som to radsej popisal (napriklad 
ako poznamku prekladatela) asi takto:


Zoznamy sa daju vytvarat aj pomocou skratenej notacie (zrejme 
pochadzajucej z mnozinovej notacie v matematike). V anglictine sa tento 
postup nazyva "list comprehension".

>>> [i for i in range(1,5)]
[1, 2, 3, 4]


Toto citatel urcite pochopi a dalej uz mozete v celom texte pracoval iba s 
pojmom "list comprehension".  To bude mat aspon 2 vyhody: 
1. Citatel sa neskor lahko zorientuje aj v originalnom anglickom texte 
(napr. v dokumentacii) 
2. Vy nebudete musiet kazdy vyskyt tohoto pojmu v texte prekladat znova do 
cestiny. 

Ja som kedysi tomu co je "list comprehension" tiez nerozumel a pamatam si, 
ze prave Vy ste mi to pred par rokmi vysvetlil v tejto konferencii nejakym 
podobnym sposobom :-)

S pozdravom
Roman
 



From:
"Přikryl Petr" 
To:
python@py.cz
Date:
29.03.2010 12:15
Subject:
Re: [python] "list comprehension" -- prozatimni zaver
Sent by:
python-boun...@py.cz



 
RMiklos napsal
> list comprehension = notace na vytváření seznamu 

Jo. Jenže [1, 2, 3, 4] je taky notace na vytváření
seznamu. A potřebuju dospět k samostatnému ekvivalentu
pojmu "comprehension".

Hynek Fabian
> Přikryl Petr:
> > list comprehension = generátorová notace seznamu
> > set comprehension = generátorová notace množiny
> > dictionary comprehension = generátorová notace slovníku
> 
> Po technické stránce je to perfektní. Ale [...] vítězí krátké
> a stručné termíny nad popisnými, a dvanáct slabik je moc.

Ano. Zatím jsem na nic stručnějšího při chtěné
přesnosti vyjádření nepřišel.

> Vsadím jablečný koláč proti psímu sucharu, že „notace“ 
> bude z praktického užití okamžitě vypuštěna. Je to slovo
> přesné a výstižné, ale nadbytečné.

To mi nevadí. To je život. Já to tam potřebuju, tak
to použiju a nechám na každém, jak moc se toho chce
držet při rychlé osobní komunikaci, kdy se věci mohou
vyjasňovat doplňujícími dotazy a poznámkami. Generátor seznamu
je fajn. Ale bez kontextu to může být víc věcí.

P.___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python


___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python

Re: [python] "list comprehension" -- prozatimni zaver

2010-03-29 Thread David Rohleder
rmik...@pss.sk píše v Po 29. 03. 2010 v 11:55 +0200:
> a co toto?: 
> 
> list comprehension = notace na vytváření seznamu 
> 

to je ještě opisnější a dává to míň smysl. Mně ta původní verze s
generátorovou notací seznamu přijde asi nejlepší.

D.



> 
> 
> 
> From: 
> Hynek Fabian
>  
> To: 
> Konference PyCZ  
> Date: 
> 29.03.2010 10:39 
> Subject: 
> Re: [python] "list comprehension"
> -- prozatimni zaver 
> Sent by: 
> python-boun...@py.cz
> 
> 
> __
> 
> 
> 
> Přikryl Petr:
> >list comprehension = generátorová notace seznamu
> >set comprehension = generátorová notace množiny
> >dictionary comprehension = generátorová notace slovníku
> 
> Po technické stránce je to perfektní. Ale obávám se, že prakticky mají
> takové 
> výrazy stejnou šanci uchytit se jako „smrkonosoplena“. IMO ve
> skutečném 
> používání vítězí krátké a stručné termíny nad popisnými, a dvanáct
> slabik je 
> moc.
> Vsadím jablečný koláč proti psímu sucharu, že „notace“ bude z
> praktického 
> užití okamžitě vypuštěna. Je to slovo přesné a výstižné, ale
> nadbytečné.
> ___
> Python mailing list
> Python@py.cz
> http://www.py.cz/mailman/listinfo/python 
> 
> ___
> Python mailing list
> Python@py.cz
> http://www.py.cz/mailman/listinfo/python


___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python

Re: [python] "list comprehension" -- prozatimni zaver

2010-03-29 Thread Přikryl Petr
 
RMiklos napsal
> list comprehension = notace na vytváření seznamu 

Jo. Jenže [1, 2, 3, 4] je taky notace na vytváření
seznamu. A potřebuju dospět k samostatnému ekvivalentu
pojmu "comprehension".

Hynek Fabian
> Přikryl Petr:
> > list comprehension = generátorová notace seznamu
> > set comprehension = generátorová notace množiny
> > dictionary comprehension = generátorová notace slovníku
> 
> Po technické stránce je to perfektní. Ale [...] vítězí krátké
> a stručné termíny nad popisnými, a dvanáct slabik je moc.

Ano. Zatím jsem na nic stručnějšího při chtěné
přesnosti vyjádření nepřišel.

> Vsadím jablečný koláč proti psímu sucharu, že „notace“ 
> bude z praktického užití okamžitě vypuštěna. Je to slovo
> přesné a výstižné, ale nadbytečné.

To mi nevadí. To je život. Já to tam potřebuju, tak
to použiju a nechám na každém, jak moc se toho chce
držet při rychlé osobní komunikaci, kdy se věci mohou
vyjasňovat doplňujícími dotazy a poznámkami. Generátor seznamu
je fajn. Ale bez kontextu to může být víc věcí.

P.___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python

Re: [python] "list comprehension" -- prozatimni zaver

2010-03-29 Thread RMiklos
a co toto?:

list comprehension = notace na vytváření seznamu





From:
Hynek Fabian 
To:
Konference PyCZ 
Date:
29.03.2010 10:39
Subject:
Re: [python] "list comprehension" -- prozatimni zaver
Sent by:
python-boun...@py.cz



Přikryl Petr:
>list comprehension = generátorová notace seznamu
>set comprehension = generátorová notace množiny
>dictionary comprehension = generátorová notace slovníku

Po technické stránce je to perfektní. Ale obávám se, že prakticky mají 
takové 
výrazy stejnou šanci uchytit se jako „smrkonosoplena“. IMO ve skutečném 
používání vítězí krátké a stručné termíny nad popisnými, a dvanáct slabik 
je 
moc.
Vsadím jablečný koláč proti psímu sucharu, že „notace“ bude z praktického 
užití okamžitě vypuštěna. Je to slovo přesné a výstižné, ale nadbytečné.
___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python


___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python

Re: [python] "list comprehension" -- prozatimni zaver

2010-03-29 Thread Hynek Fabian
Přikryl Petr:
>list comprehension = generátorová notace seznamu
>set comprehension = generátorová notace množiny
>dictionary comprehension = generátorová notace slovníku

Po technické stránce je to perfektní. Ale obávám se, že prakticky mají takové 
výrazy stejnou šanci uchytit se jako „smrkonosoplena“. IMO ve skutečném 
používání vítězí krátké a stručné termíny nad popisnými, a dvanáct slabik je 
moc.
Vsadím jablečný koláč proti psímu sucharu, že „notace“ bude z praktického 
užití okamžitě vypuštěna. Je to slovo přesné a výstižné, ale nadbytečné.
___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python

Re: [python] "list comprehension" -- prozatimni zaver

2010-03-27 Thread Koumes21
Nazdar,

zrovna mě taky jedna možnost napadla, ale sám nevím, jak je dobrá.
Posuďte, prosím, sami. Já navrhuji překládat "list comprehension" jako
"zrychlený zápis seznamu", "zestručněný zápis seznamu" nebo "stručná
notace tvorby seznamu", případně některou kombinaci předchozích
spojení.

Mimochodem, ačkoliv spojení "stručná notace tvorby seznamu" vypadá,
jako že je moc dlouhé, je ve skutečnosti o dvě slabiky kratší než
"generátorová notace seznamu".

k21

2010/3/26 Přikryl Petr :
> Toto je velmi zajímavý příspěvek a na jeho
> základě jsem dospěl k závěru, který uvádím...
> no na závěr. Díky
>
> Jan Bednařík napsal (rozlámal jsem a doplnil číslování kvůli odkazům)
>>
>> 1) Rozhodně nepřekládat. Překlad nic neřekne začátečníkovi,
>> ale ani nikomu, kdo má s programováním zkušenosti.
>>
>> "list comprehension" je obecný pojem používaný
>> v mnoha programovacích jazycích.
>> Pokud vím, tak neexistuje žádný všeobecně rozšířený překlad
>> do češtiny. A osobně se nepamatuji, že bych se setkal
>> s knihou/učebnicí/skripty, kde by to někdo překládal.
>>
>> 2) Význam pojmu "list comprehension" je natolik specifický,
>> že při snaze ho přeložit se vždy dostaneme na velmi
>> tenký led.
>>
>> 3) Použití všeobecně známých pojmů z programovacích
>> jazyků jako "generátor", "konstruktor", atp. s sebou
>> ponese matoucí asociace.
>>
>> 4) Například pod pojmem "generátorový zápis" si spousta
>> lidí představí "generator expression" a těžko pochopí,
>> že to má mít úplně jiný význam.
>>
>> 5) "list comprehension" je pojem používaný
>> v informatice desítky let. To že ho ještě nikdo
>> nějak rozumně nepřeložil do češtiny (tím myslím překlad
>> který by se uchytil) asi o něčem vypovídá. Myslím si,
>> že jakákoliv snaha tento pojem přeložit si vyžádá širší
>> akademickou diskusi přesahující komunitu okolo jazyka
>> Python. Zkusil bych se poptat odborníků na fakultách
>> informatiky zdejších vysokých škol. Třeba někde
>> vymysleli a používají nějaký rozumný překlad.
>
> =
>
> ad 1) Cílem té knihy mimo jiné je, aby to někomu něco řeklo.
> A ten překlad se dělá proto, aby to bylo k dispozici
> pro české čtenáře. Chápu, je to trochu paradox ;)
>
> Takže první závěr zní, rozhodně to nějak přeložím.
> Originální pojem samozřejmě ponechám v závorce
> a přidám asi odkaz na http://en.wikipedia.org/wiki/List_comprehension
>
> ad 2) Není to zase tak tenký led. Jedna věc je snažit se
> přeložit "anglické slovo comprehension" a druhá věc je snažit
> se najít odpovídající pojem, který vychází z významu toho
> anglického pojmu. Na výše uvedeném odkazu na wikipedii se
> dají najít tyto jasné stopy (list comprehension):
>
>  - Je to SYNTAKTICKÁ KONSTRUKCE. Tím odpadají kandidáti
>   typu "generovaný seznam" (protože to vyjadřuje spíš
>   dynamický výsledek, než statický zápis v programu, tj.
>   syntaktickou konstrukci.
>
>  - Existuje i matematický pojem "set comprehension", pro který
>   existuje ekvivalent "set-builder notation" -- doslova
>   notace (zápis) vytvářeče množin. Je to ono známé (příklad)
>
>      { x elem N: x > 0 }
>
>  - Ty zmíněné jazyky jsou většinou deklarativní jazyky.
>   Mají svým způsobem blíž ke klasické matematice, kde
>   "množina vznikne, obsah splňuje vlastnosti, je".
>   Ale už ono "set-builder" napovídá tomu, že v praktickém
>   případě se musí nějak vybudovat...
>
> ad 3) S tím částečně souhlasím. Proto se snažím o diskusi.
> Protože definice pojmů jsou vždy věcí dohody. Není v tom nic
> mechanického. Vstupuje do toho lidský faktor, protože je to
> nástroj pro lidi.
>
> ad 4) Tady si dovolím oponovat. Jestli jste to pochopil
> takto, tak mám radost, protože právě takhle to bylo myšleno.
> Ono to totiž nemá jiný význam.
>
> Na http://en.wikipedia.org/wiki/List_comprehension se říká,
> že jde o "syntaktickou konstrukci pro vytvoření seznamu
> z jiného seznamu". V deklarativních jazycích je to OK.
> Ale Python je imperativní jazyk a tahle přejatá konstrukce
> je elegantně použita s širší platností. List comprehension
> totiž umožňuje vytvořit seznam z čehokoliv, přes co se dá
> iterovat (nejen ze seznamu). A ta iterace se dá popsat
> výrazem (tedy nejen příkazy) a tomu výrazu se říká
> generátorový výraz.
>
> Generátorový výraz je zvláštní v tom, že šikovně kombinuje
> deklarativní přístup s imperativním. Deklarativně se zapisuje
> a jeho možnosti se podobají generátorové funkci (která
> má uvnitř yield).
>
> Vyhodnocením generátorového výrazu nebo zavoláním generátorové
> funkce vznikne generátor (generátorový objekt). Postupným
> voláním .next() můžeme získat generované hodnoty.
>
> ad 5) [... akademickou diskusi.] Což tímto samozřejmě činíme.
> Čtou to i lidé, kteří se věnují výuce.
>
> Postupně přejdu k závěru...
>
> List comprehension je syntaktická konstrukce. Jejím účelem
> je popsat vytvoření seznamu jaksi víc deklarativně. Protože
> jde o syntaktickou konstrukci se specifickým významem, není
> pravděpodobně implementována překladem na obecný generátor,
> al

[python] "list comprehension" -- prozatimni zaver

2010-03-25 Thread Přikryl Petr
Toto je velmi zajímavý příspěvek a na jeho
základě jsem dospěl k závěru, který uvádím...
no na závěr. Díky

Jan Bednařík napsal (rozlámal jsem a doplnil číslování kvůli odkazům)
> 
> 1) Rozhodně nepřekládat. Překlad nic neřekne začátečníkovi,
> ale ani nikomu, kdo má s programováním zkušenosti. 
> 
> "list comprehension" je obecný pojem používaný 
> v mnoha programovacích jazycích. 
> Pokud vím, tak neexistuje žádný všeobecně rozšířený překlad 
> do češtiny. A osobně se nepamatuji, že bych se setkal 
> s knihou/učebnicí/skripty, kde by to někdo překládal.
> 
> 2) Význam pojmu "list comprehension" je natolik specifický, 
> že při snaze ho přeložit se vždy dostaneme na velmi 
> tenký led. 
> 
> 3) Použití všeobecně známých pojmů z programovacích 
> jazyků jako "generátor", "konstruktor", atp. s sebou 
> ponese matoucí asociace. 
> 
> 4) Například pod pojmem "generátorový zápis" si spousta 
> lidí představí "generator expression" a těžko pochopí, 
> že to má mít úplně jiný význam.
> 
> 5) "list comprehension" je pojem používaný 
> v informatice desítky let. To že ho ještě nikdo 
> nějak rozumně nepřeložil do češtiny (tím myslím překlad 
> který by se uchytil) asi o něčem vypovídá. Myslím si, 
> že jakákoliv snaha tento pojem přeložit si vyžádá širší 
> akademickou diskusi přesahující komunitu okolo jazyka 
> Python. Zkusil bych se poptat odborníků na fakultách 
> informatiky zdejších vysokých škol. Třeba někde 
> vymysleli a používají nějaký rozumný překlad.

=

ad 1) Cílem té knihy mimo jiné je, aby to někomu něco řeklo.
A ten překlad se dělá proto, aby to bylo k dispozici
pro české čtenáře. Chápu, je to trochu paradox ;)

Takže první závěr zní, rozhodně to nějak přeložím.
Originální pojem samozřejmě ponechám v závorce 
a přidám asi odkaz na http://en.wikipedia.org/wiki/List_comprehension

ad 2) Není to zase tak tenký led. Jedna věc je snažit se
přeložit "anglické slovo comprehension" a druhá věc je snažit
se najít odpovídající pojem, který vychází z významu toho
anglického pojmu. Na výše uvedeném odkazu na wikipedii se
dají najít tyto jasné stopy (list comprehension):

 - Je to SYNTAKTICKÁ KONSTRUKCE. Tím odpadají kandidáti
   typu "generovaný seznam" (protože to vyjadřuje spíš
   dynamický výsledek, než statický zápis v programu, tj.
   syntaktickou konstrukci.
   
 - Existuje i matematický pojem "set comprehension", pro který
   existuje ekvivalent "set-builder notation" -- doslova
   notace (zápis) vytvářeče množin. Je to ono známé (příklad)
   
  { x elem N: x > 0 }
  
 - Ty zmíněné jazyky jsou většinou deklarativní jazyky. 
   Mají svým způsobem blíž ke klasické matematice, kde 
   "množina vznikne, obsah splňuje vlastnosti, je".
   Ale už ono "set-builder" napovídá tomu, že v praktickém
   případě se musí nějak vybudovat...
   
ad 3) S tím částečně souhlasím. Proto se snažím o diskusi.
Protože definice pojmů jsou vždy věcí dohody. Není v tom nic
mechanického. Vstupuje do toho lidský faktor, protože je to 
nástroj pro lidi.

ad 4) Tady si dovolím oponovat. Jestli jste to pochopil
takto, tak mám radost, protože právě takhle to bylo myšleno.
Ono to totiž nemá jiný význam.

Na http://en.wikipedia.org/wiki/List_comprehension se říká,
že jde o "syntaktickou konstrukci pro vytvoření seznamu
z jiného seznamu". V deklarativních jazycích je to OK.
Ale Python je imperativní jazyk a tahle přejatá konstrukce
je elegantně použita s širší platností. List comprehension
totiž umožňuje vytvořit seznam z čehokoliv, přes co se dá
iterovat (nejen ze seznamu). A ta iterace se dá popsat
výrazem (tedy nejen příkazy) a tomu výrazu se říká 
generátorový výraz. 

Generátorový výraz je zvláštní v tom, že šikovně kombinuje
deklarativní přístup s imperativním. Deklarativně se zapisuje
a jeho možnosti se podobají generátorové funkci (která
má uvnitř yield). 

Vyhodnocením generátorového výrazu nebo zavoláním generátorové
funkce vznikne generátor (generátorový objekt). Postupným 
voláním .next() můžeme získat generované hodnoty.

ad 5) [... akademickou diskusi.] Což tímto samozřejmě činíme.
Čtou to i lidé, kteří se věnují výuce.

Postupně přejdu k závěru...

List comprehension je syntaktická konstrukce. Jejím účelem
je popsat vytvoření seznamu jaksi víc deklarativně. Protože
jde o syntaktickou konstrukci se specifickým významem, není
pravděpodobně implementována překladem na obecný generátor,
ale je to uděláno efektivněji.

Přesto ale věcně můžeme List comprehension čistě nahradit
použitím konstruktoru seznamu a do něj vloženého generátoru,
který může být definován i generátorovým výrazem. Srovnejte:

>>> lst = [ i*2 for i in range(10) ]
>>> lst
[0, 2, 4, 6, 8, 10, 12, 14, 16, 18]

a generátorovým výrazem

>>> lst = list(i*2 for i in range(10))
>>> lst
[0, 2, 4, 6, 8, 10, 12, 14, 16, 18]

Takže list comprehension je typický "syntactic sugar", 
který může být díky tomu, že jde o speciální případ
generátoru poněkud efektivněji implementován.

A teď "set comprehension" neboli "set