[:hr]Arheologija programerske kulture[:]

Kazimir Majorinc : Moćan koliko je god moguće

 
“In developing LISP our first goal is to describe a language which is as powerful as possible from the point of view of the programmer.”

 
Većina programera prvi se puta susreće s Lispom preko nekog od brojnih citata i aforizama u kojima se, ponekad i preko mjere, ističu ljepota, elegancija i moć jezika. Tako se, primjerice, razumijevanje Lispa naziva prosvjet­ljenjem; tvrdi se da iskustvo programiranja u Lispu čini programera boljim, čak i ako nikad u životu ne bude ko­ristio Lisp. Jeziku se, doduše u šali, pripisuju mistična svojstva; bog (ili bogovi) svijet su napisali u Lispu, a Lisp zajednica se opisuje kao kult.
 
Odluči li programer proučiti Lisp, zacijelo će zaključiti da je Lisp začuđujuće moćan, ali jednako tako začuđujuće jednostavan programski jezik. Moć je manje upitna; želi li dizajner jezika stvoriti moćan jezik, uloži li dovoljno vre­mena i napora, teško da neće i uspjeti. Jednostavnost je čudna; ona ostavlja dojam da je Lisp otkriven, a ne stvo­ren. Sličan su dojam imali i članovi artificial intelligence projekta na američkom MIT-­ju koji su razvili Lisp, zamišljen kao moćan, ali praktičan i vrlo složen jezik. Suprotno onome što bi se moglo očekivati, Lisp je tijekom razvoja postajao sve jednostavniji. Tek kad je glavni dizaj­ner John McCarthy napisao članak kojim je Lisp predsta­vljen javnosti, članovi projekta prepoznali su Lisp kao “predmet ljepote” i sam vrijedan proučavanja.
 
Narednih desetljeća neki članovi Lisp zajednice pokušali su jezik učiniti još općenitijim, moćnijim, jednostav­nijim i korektnijim opisom načina na koji programeri raz­ mišljaju. Drugi, brojniji pokušaji unapređenja potaknuti su željom da se jezik učini efikasnijim, praktičnijim, popu­larnijim, možda čak i profitabilnijim. Čak i kad su radili kompromise, dizajneri su nastojali identificirati, zadržati, možda i unaprijediti bitne kvalitete jezika. Lisp je utjecao na druge programske jezike. U manjoj mjeri, i drugi pro­gramski jezici utjecali su na Lisp. Različiti motivi, priori­ teti i rješenja doveli su do raspada i fragmentacije zajedni­ce i razvoja brojnih, znatno različitih dijalekata i zajednica okupljenih oko dijalekata.
 
U uvjetima fragmentacije zajednice i postojanja broj­nih tumačenja osnovnih ideja, onaj tko želi razumjeti Lisp teško može izbjeći povijesni pristup; upoznavanje s ideja­ma u obliku koji su imale kad su nastajale. Najzanimljivi­ji period pri tome je, u pravilu, onaj najraniji. Ova knjiga pokušava izložiti nastajanje i razvoj glavnih ideja Lispa tijekom prvih nekoliko godina u kojima je John McCarthy vodio razvoj jezika.
 
Pokušaja sistematičnog izlaganja glavnih ideja Lispa u ranom periodu već je bilo. Sam je McCarthy održao ne­koliko predavanja i napisao nekoliko članaka o toj temi. Ranu povijest Lispa daleko je najviše istraživao Herbert Stoyan. Osim Stoyanove knjige LISP, Anwendungsgebiete, Grundbegriffe, Geschichte iz 1980., izdane samo na nje­mačkom jeziku i danas teško dostupne, svi radovi o povi­jesti Lispa pisani su u obliku za čije je razumijevanje pot­rebna već dobra upućenost u Lisp. Ova knjiga pisana je tako da bude razumljiva svakom programeru s malo isku­stva u bilo kojem programskom jeziku.
 
Tijekom pisanja knjige autor je održao nekoliko dese­taka izlaganja u Hacklabu Mama u Zagrebu. Diskusije s članovima Hacklaba u velikoj su mjeri utjecale na sadržaj i oblik knjige.
 
Kazimir Majorinc

 
 
Tiskano izdanje knjige se može preuzeti u MaMi.

više