Na početnu stranicu! Udruga Darovitih Informatičara Rijeke Na glavni izbornik!

Što je logo?

Logo je programski jezik. Ime dolazi od grčke riječi logos što znači riječ. Za razliku od prijašnjih programskih jezika, koji su se uglavnom bavili aritmetičkim proračunima i bili prvenstveno tomu namijenjeni, Logo je izrađen kao alat za manipulaciju jezikom. Njegova najbolja upotrebljivost bila je vezana uz obradu riječi i rečenica. Kao i ostali programski jezici, Logo je programerski alat opće namjene i može se izučavati na više načina i na više obrazovnih razina. Uči se od predškolskog odgoja sve do akademskih institucija.

Logo je žrtva svog uspjeha u osnovnim školama i predškolskim ustanovama. Smatralo se da je to "programski jezik za bebe". Tako se od vrlo snažnog alata pretvorio u programski jezik koji se rabi tu i tamo, za crtanje lijepih poligona ili učenje četverogodišnjaka uporabi računala. Takvo pogrešno mišljenje može zahvaliti svojoj ugrađenoj revolucionarnoj grafici. Grafičke procedure su toliko jednostavne da ih mogu koristiti na kreativnoj razini i djeca rane dobi. Nasuprot tomu, po riječima Briana Harveya, u svijetu priznatog Logo-autoriteta, to je u stvari vrlo snažan programski jezik za kućna računala. On je dijalekt (jezik nastao iz drugog jezika) Lispa, jezika koji se rabi za najnaprednija istraživanja u računalnim znanostima, osobito u istraživanjima umjetne inteligencije (razvoj sustava koji sami sebe uče bez izravnog utjecaja čovjeka- artificial intelligence).

Snaga Loga nije u tome da pomoću njega možemo napisati nešto što u drugom programskom jeziku ne možemo. Svaki jezik, na ovaj ili onaj način, može uspješno poslužiti svrsi. Logo nam samo dopušta da se koncentriramo na problem, a ne na ograničenja koja nam nameće programski jezik u pronalaženju načina rješavanja problema. Na primjer, ako želimo grupirati dvadesetak brojeva u Pascalu (ili drugim programskim jezicima stvorenim po uzoru na Fortran), moramo deklarirati matricu (niz podataka- array), zatim moramo znati gdje se što nalazi u memoriji. Poželimo li naknadno dodati još jedan broj u rezervirani niz, šteta! Osim toga, to mogu biti samo brojevi ili ono što smo deklarirali, nikako miješano znakovi, brojevi i, recimo, stringovi (nizovi alfanumeričkih znakova). U Logu je čitav proces spremanja u memoriju automatski; pri tomu ne moramo unaprijed definirati količinu podataka i njihov tip. Želimo li naknadno dodati bilo koji tip podataka, to se može i to bez naše brige o potrebnom prostoru u memoriji. Ona se dodjeljuje automatski. Ovo je samo jedna od prednosti Loga nad "Fortranolikim" jezicima. Ostale nemamo namjeru pojašnjavati u ovom priručniku.

Općenito, Fortran i njegovi srodnici nastali su prije nego što je bila dobro poznata matematička osnova računalnog programiranja. "Lispoliki" jezici, kao Logo, rabe moderne načine i spoznaje u programiranju poput kompozicije funkcija (nizanje funkcija koje jedna drugoj predaju podatke).

Jedna od najsnažnijih karakteristika Loga jest rekurzija i rekurzivno programiranje. Ovu i ostale karakteristike imaju i neki drugi moderni programski jezici. Jedan od njih je i Scheme. On ima mnoštvo hvale vrijednih karakteristika i korišten je u mnogim najboljim informatičkim (computer science) knjigama poput "Structure and Interpretation of Computer Programs" od Harolda Abelsona i suradnika (MIT Press/McGraw-Hill, 1985). Ako netko pokuša učiti Scheme nakon Basica ili Pascala, mogao bi imati problema. Međutim prelazak s Loga na Scheme je prirodan proces.

(izvadak iz knjige Fredija Glavana)