Imagine (programovací jazyk)

Imagine alebo Imagine Logo je programovací jazyk a IDE prostredie určený na výuku programovania na základných a stredných školách. Imagine je pokračovateľom programovacieho jazyka Logo.

Imagine Logo patrí medzi detské programovacie jazyky, napriek tomu v ňom možno písať aj komplexnejšie aplikácie. Motivačným základom je ovládanie korytnačky Žofky, ktorá ovláda niekoľko základných príkazov, ktoré žiak píše v materinskom jazyku. Na začiatku príkazy zadáva cez príkazový riadok, postupne však sady príkazov zoskupuje do procedúr a celých projektov.

Imagine v IDE prostredí je interpretačný jazyk, projekt možno skompilovať do exe súboru. Projekt tiež možno zverejniť na www stránkach, používateľ, ktorý by si ho chcel spustiť v prehliadači musí mať nainštalovaný plugin.

Školy zapojené do projektu Infovek majú zakúpenú multilicenciu pre všetkých svojich žiakov a učiteľov.

Základné príkazy 
Poznámky: Príkazy v zátvorkách sú skratky príkazov v plnom tvare
Pod termínom príkaz sa v ďalšom texte rozumie nielen jednoduchý príkaz, ale aj programátorom definované procedúry s parametrami a zložené príkazy

Dopredu n (DO)korytnačka sa pohne o n bodov v smere v ktorom je otočená. Ak má pero dole, nakreslí za sebou čiaru v nastavenej farbe a hrúbke
vzad nto isté ako Dopredu, ale korytnačka cúva
vpravo n; vľavo nkorytnačka sa otočí doprava alebo doľava o n stupňov
nechHrúbkaPera n (nechHP n)nastavenie hrúbky pera
nechFarbaPera "farba (nechFP "farba)nastavenie farby pera, farba sa zadáva v prirodzenom jazyku len zo syntaktických dôvodov je uvedená na začiatku úvodzovkou, koncová úvodzovka sa nezadáva
PeroHore (PH)pri pohybe korytnačka nezanecháva stopy
PeroDole (PD)pri pohybe korytnačka kreslí nastaveným perom
opakuj n príkazn krát zopakuje príkaz
ak podmienka príkazak je splnená podmienka vykoná sa príkaz
ak2 podmienka príkaz1 príkaz2ak je splnená podmienka vykoná sa príkaz1 inak sa vykoná príkaz2
kým podmienka [prikaz1 príkaz2 ... príkazN]cyklus, ktorý sa bude vykonávať, kým je splnená podmienka. Hranaté zátvorky slúžia na ohraničenie príkazov ktoré sa majú opakovane vykonať
náhodne nvygeneruje náhodné číslo 0 až n
znovuzmaže pracovnú plochu a umiestni korytnačku do stredu pracovnej plochy, korytnačka smeruje nahor
nechFarbaVýplne "farba (nechFV "farba)nastavenie farby výplne
vyplňvyfarbí plochu ohraničenú inou farbou, než je aktuálna farba bodu, na ktorom korytnačka stojí
čakaj časčaká toľko milisekúnd, koľko sme zadali v parametri čas
k v minulosti zadaným príkazom sa dostaneme tak, že kurzor myši presunieme na príkazový riadok a stláčame šipky hore alebo dole

Premenné 
urob "premenná hodnotaak premenná ešte neexistovala, vytvorí ju a nastaví  na hodnotu hodnota, inak len nastaví novú hodnotu

:premennápoužitie premennej, ktorá už bola definovaná

urob "premenná :premenná+5k hodnote premennej sa pripočíta 5

Definovanie procedúry 
viem názovprocedúry prikaz1 príkaz2 ... príkazN koniec

Príkazy sú oddelené medzerami alebo odriadkovaním, v tomto prípade ide o precedúru bez parametrov.

viem názovprocedúry :premenná príkaz1 príkaz2 ... príkazN koniec

Procedúra s jedným parametrom. Ak pri volaní procedúry nezadáme parameter, vyžiada si hodnotu od používateľa.

Ak by sme chceli, aby korytnačka nakreslila štvorec so zvolenou dĺžkou, možno to zadefinovať napríklad nasledujúcu procedúru:

viem štvorec :dĺžka opakuj 4 [dopredu :dĺžka doprava 90] koniec

Zdroj 
 Anino Belan: IMAGINE : učebný text pre terciu osemročného gymnázia. Škola pre Mimoriadne Nadané Deti a Gymnázium, Bratislava 2004. 

Programovacie jazyky