OT: software - zaujimave citanie

Milan B. milan na bastl.sk
Středa Září 29 20:08:00 CEST 2010


  On 29. 9. 2010 16:31, Ales Prochaska wrote:
> Lituji, že musím odporovat, ale programovací jazyk je velmi podstatnou
> složkou programování.
Aj ked dalekohlad je podstatnou zlozkou astronomie, astronomia nie je 
veda o dalekohladoch (volne parafrazovany EWD)


>   Jazykovědci (přes přirozené jazyky) se už
> shodli, že jazyk determinuje myšlení
Ale asi v tom zmysle, ze jazyk dokaze vyjadrit javy a myslienky, ktorymi 
spolocnost zije a ktore ju formuju - clovek ma moznost prijimat 
informacie a na ich zaklade sa moze formovat jeho myslenie. Chcete snad 
povedat ze Francuz rozmysla zasadne inac ako Madar?

Niekedy v 60-tych (plus-minus) rokoch, ked zlozitost programov dosiahla 
urcitu hranicu, experti dospeli k zaveru, ze problemom su programovacie 
jazyky, ktore maju odlisnu strukturu od jazykov ludskych. A tak zacali 
vznikat ukecane jazyky ako napriklad COBOL. Experti sa mylili - problem 
bol v niecom inom.

>   a něco podobného platí pro
> programovací jazyky.
Pokial programovaci jazyk splna kriterium Turingovej kompletnosti , tak 
je dostatocnym prostriedkom na implementaciu cohokolvek a nemal by mat 
ziaden vplyv na implementaciu.

Takyto nazor - ze jazyk je dolezity - vedie k niecomu opacnemu - dnesny 
programator-absolvent dokaze naprogramovat len to, co mu ponuka jazyk a 
prilahle kniznice a nedokaze prekrocit istu mentalnu hranicu. Moze to 
byt sposobene aj tym, ze na uz skolach sa vyuka programovania viaze na 
konkretne produkty a jazyky. Tak sa mi mari, ze za mojich mladych cias 
sme sa vseobecne programovanie ucili na abstraktnom jazyku PL/0 (a 
neskor ako semestralnu pracu sme mali napisat jeho kompilator a 
interpreter generovaneho p-kodu) .


>   Aby programátor mohl (a uměl) použít určité
> metody a postupy, tak musí existovat jazyk který je podporuje.
Paneboze, to snad nemyslite vazne? Ked jazyk nepodporuje komplexne 
cisla, tak to znamena, ze v komplexnych cislach nebudeme pocitat? Alebo 
ak jazyk nepodporuje maticove operacie operacie, tak ich vylucime 
maticove operacie nebudeme pouzivat? Ked neobsahuje OOP, tak sa v nom 
neda objektovo programovat (ako napriklad GTK+)?

Kdesi som cital priklad, ze nejaky novozelandsky primitivny kmen ma 
jednoslovny vyraz pre "staru vacicu, ktora vyliezla na strom a znovu z 
neho zliezla" a uplne iny jednoslovny vyraz pre "staru vacicu, ktora 
vyliezla na strom a ostala na nom". Na zaklade vasej argumentacie  by sa 
dalo tvrdit, ze nase moderne jazyky nedokazu popisat chovanie starej 
vacice. Dokazu. Len na to potrebuju viac slov.

A to iste plati o programovacich jazykoch. Su to len nastroje. Niektore 
sikovnejsie, niektore menej. Ale su to len nastroje. A nastroj nesmie 
urcovat vysledok. Ak to dovolime, ideme do p...pekla.

Ja vobec nechapem to vyzdvihovanie jazyka - ak potrebujem nieco 
naprogramovat, tak to naprogramujem (skor ci neskor). Ak pre riesenie 
nie je moj oblubeny jazyk dostatocne komfortny, tak pouzijem nieco ine 
(nedavno som programoval grafy v PostScripte - tym myslim priamo v 
jazyku Postscript,  nemyslim tym, ze som niecim generoval PostScript). 
Ale nikdy - opakujem nikdy - sa nestalo, ze by som nieco neurobil len 
preto, ze to jazyk "nepodporuje".

Hint: Tu je vhodne miesto na protiargumenty plne TLA ako je  TCO, TTM  a 
vplyv programovacieho jazyka na dosiahnutie ich vysokych hodnot ....

> Typický
> případ je rozdíl (někdy velmi velký rozdíl) mezi přístupem
> programátorů či analytiků zvyklých na konkrétní nebo naopak abstraktní
> datové struktury.
>
Nechapem ako. Mohli by ste pojednat trochu obsirnejsie?

> Ostatně ani Michelangelo by svého Davida nevyrobil bez vynálezu železa
> na to dláto :-)
Vyrobil. Pouzil by tvrdsi kamen ako nastroj. Napriklad diamant.

Objav dlata nebol asi ten najdolezitejsi dovod, preco vznikol David.

>   A naopak, současné nejmodernější metody by mu byly
> nejspíš vcelku na nic, i když by dnes již bylo možné Davida
> vymodelovat v CADu a sprostě vyfrézovat na encéčku :-)

Tak by mohol vzniknut akurat tak Buratino.

Michelangelo bol dolezity, nie to dlato a ani iny nastroj.

> Prostě jeho
> metodika vyžaduje určité pracovní nástroje.
>
> Ales Prochaska
>
>>    On 29. 9. 2010 12:42, Ales Prochaska wrote:
>>> Hm... Taky poulim oci :-) Tenhle bych urcite nedal do prihrady
>>> "bezpecne programovaci jazyky" :-)
>>>
>> Programovanie nie je o programovacom jazyku, tak ako Michelangelov David
>> nie je o kladive a dlate
>> Keby toto ludia pochopili, mozno by svet fungoval o trochu lepsie.
>> -m-
>>> Ales Prochaska
>>>
>>>
>> _______________________________________________
>> HW-list mailing list  -  sponsored bywww.HW.cz
>> Hw-list na list.hw.cz
>> http://list.hw.cz/mailman/listinfo/hw-list
> _______________________________________________
> HW-list mailing list  -  sponsored bywww.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list



Další informace o konferenci Hw-list