Re: "\\Re: -> Windows könyv helyett "Knuth""

SZIGETI Szabolcs szigi at ik.bme.hu
Tue May 31 10:15:07 CEST 2005


Hali!

A Knuth féle könyv a "Számítógép programozás művészete" egy nagy klasszikus. 
Alapvető lagorimusokról, adatszerkezetekről van benne szó, igen részletes 
elemzéssel. Ha valaki keresésről és rendezésről majdnem 800 oldalt tud írni, 
az kemény. "Kicsi csíra" programozócskáknak szoktam emlegetni, aki egy Linux 
kernel fordítása után a világ legnagyobb infomratikusának képzeli magát, de 
egy tíz elemű tömbben csak másféperces futásidejű programmal találja meg a 
legnagyobb elemet.

Az biztos, hogy amikor akönyv íródott, akkor még messze nem voltak ilyen 
gyors gépek, tehát az optimalizálásnak (amelyről pont Knuth írja: "A túl 
korai optimalizálás minden baj gyökere"), a jól kitalált algoritmusoknak 
igen nagy szerepe volt. Persze, ha mindenki ez alapján dolgozna, akkor 
lehet, hogy mas sem kelleme 2GHz, és 1Gbyte, hogy elinduljon egy gép.

A könyv példaprogramjai egy MIX nevű kitalált processzoron futnak, 
assemblyben, de állítólag készül a könyv új kiadása, amelyben kicsit 
magasabb szintű nyelv lesz.

A könyv nem könnyű olvasmány, de ha hatékony algorimusok kellenek (mert 
nincs memóriád, vagy teljesítményed), akkor kötelelző olvasmány. Egyébként 
csak ajánlott. Magyarul is megjelent, de sajnos nem igazán lehet kapni.

Szabolcs

PS: a Knuth egy nagyon fura fazon, többek között a könyv irása közben 
rájött, hogy a sok képletet nehéz megszerkeszteni, ezért először megtanulta 
a tipográfiát és a betűmetszést, majd megírta a TeX nevű szedőprogramot, de 
előtte kitalálta a Web nevű nyelvet, hogy lehetőleg hibátlan kódot tudjon 
írni. A legtöbb tudományos cikket azóta is TeX-ben írják, mert bonyolult 
képleteket nagyon könnyű írni benne.
Minden, a TeX-ben felfedezett hibárét, pénzjutalant küld, amely $2,56 -ról 
indult, és minden új hibánál kétszereződik. Most $327,68-nál tartanak, tehát 
nem mondhatni, hogy sok hibát találtak benne az utóbbi 20 évben...




More information about the Elektro mailing list