Š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)