Logo (programmeerimiskeel)

Logo on hariduslik programmeerimiskeel, mis töötati välja 1967. aastal USA Cambridge’i teadus- ja arendusettevõttes. „Logo“ pole akronüüm, vaid on tuletatud kreekakeelsest sõnast logos, mis tähendab sõna või mõtet. Feurzeig valis sellise nime, et eristada Logo teistest programmeerimiskeeltest, mis olid enamjaolt orienteeritud numbritele, mitte graafikale või loogikale nagu Logo.

Logo on laialdaselt tuntud kilpkonnagraafika kasutuse tõttu, kus kasutaja käskude tagajärjel joonistab väike kilpkonnanimeline robot lineaarse graafika kujundeid. Keel oli mõeldud selleks, et õpetada Lispiga seotud programmeerimise kontseptsioone. Hiljem hakati Logo abil õpetama seda, mida Papert (üks Logo loojatest) nimetas „keha süntoni mõtestamiseks“ – kilpkonna liikumise ennustamine ja mõistmine end kilpkonna rollis kujutades. On mitmeid Logo dialekte, millel on märkimisväärseid erinevusi. Pealegi vahepeal ilmub kilpkonnagraafika programme, mis nimetavad end Logoks, mille tõttu läheb olukord veel segasemaks. Logo on multiparadigmaatiline Lispi dialekt.

Logo on interpreteeritav keel, kuigi eksisteerib kompileerimispõhiseid Logo dialekte (näiteks Lhogho ja Liogo).

Ajalugu 
Logo loodi 1967. aastal Cambridge’i teadus- ja arendusettevõtte BBN töötajate Wally Feurzeig, Seymour Papert ja Cynthia Solomoni poolt. Esimese nelja aasta jooksul teostati Logo uurimis-, arendamis- ja õpetamistööd BBN-is. Logo esimene implementatsioon Ghost oli kirjutatud Lispi põhjal ning kirjutamiseks kasutati PDP-1 arvutit. Eesmärk oli luua matemaatiline pind, millel lapsed saaksid mängida sõnade ja lausetega.

Esimene töötav Logo kilpkonna robot loodi 1969. aastal. Ekraanipõhisele (virtuaalsele) kilpkonnale eelnes füüsiline "põranda kilpkonn". Esimest kilpkonna robotit juhiti juhtmega. Esmakordselt said virtuaalset ja füüsilist Logo kilpkonna kasutada 1970. aastate alguses Lexingtoni Bridge kooli viienda klassi õpilased.

Kilpkonn ja graafika 
Logo tuntuim tunnusjoon on kilpkonn, mille idee arenes välja Seymouri loodud robotist, mis paiknes põrandal ja sai liikuda eri suundades arvuti poolt saadetud käskude mõjul. Tänapäevase Logo kilpkonna all mõeldakse lihtsate Logo käskude abil juhitavat kursorit, mis liikudes ekraanil joonistab enda virtuaalse pliiatsi abil lineaarse graafika kujundeid. Seymour Papert lisas Logole kilpkonnagraafika 1960. aastate lõpus, et toetada enda füüsilist kilpkonnarobotit, mis täitis sarnaseid ülesandeid, joonistades füüsiliselt pinnale kujundeid.

Kilpkonna juhtides kasutatakse nn kilpkonnageomeetriat – kilpkonna juhtimise käsud on otseses seoses kilpkonna enda asukohaga, nii tähendab näiteks käsk „LEFT 90“ kilpkonna pööramist 90 kraadi vasakule tema hetkepositsiooni suhtes. 

Kilpkonna geomeetriat kasutatakse keskkondades väljaspool Logo alternatiivina rangelt koordineeritud graafika süsteemile. Näiteks on kilpkonna graafika idee kasulik fraktaalide genereerimisel Lindenmayeri süsteemis.

Näited Logo kilpkonna käskudest on leitavad Logo Foundationi kodulehelt.

Logo Eestis 
Logo kui programmeerimiskeelt on õpetatud ka Eestis. Üks esimesi veebikursusi oli Eestis 1996. aastal toimunud õpetajatele mõeldud Logo algkursus, kuhu registreerus üle 40 õpetaja Eesti koolidest. Kilpkonna graafikat ja sellega seotult Logo programmeerimiskeelt mainitakse mitme Tartu Ülikooli programmeerimisega seotud kursuse raames. Nii näiteks mainitakse Logo Tartu Ülikooli tuntuima MOOCi „Programmeerimine maalähedaselt" kilpkonnagraafika osas.

Logo õpetused on saadaval ka eesti keeles.

Viited 

Programmeerimiskeeled