Кіріспе

Бағдарламалау тілі

Karel – бастаушыларға арналған оқу бағдарламалау тілі, оны Ричард Э. Паттис "Karel The Robot: A Gentle Introduction to the Art of Programming" кітабында жасаған. Паттис бұл тілді Калифорния штатындағы Стэнфорд университетіндегі курстарында қолданды. Бұл тіл чех жазушысы Карел Чапектің құрметіне аталған, ол "R.U.R." пьесасында "робот" сөзін енгізген.

Негізгі қағидалар

Карел бағдарламасы қарапайым Карел атты роботты басқару үшін қолданылады. Ол көшелер желісінен (солдан оңға) және даңғылдардан (жоғарыдан төменге) тұратын ортада өмір сүреді. Карел бес негізгі команданы түсінеді: қозғалу (Карел бетіне қарап бір қадамға жылжиды), солға бұрылу (Карел 90 градусқа солға бұрылады), бипер қою (Карел тұрған жерге биперді қояды), бипер алу (Карел тұрған жерден биперді көтереді) және тоқтату (Карел өзін өшіреді, бағдарлама аяқталады). Карел сондай-ақ өзінің жақын айналасы туралы сұрақтарды қоя алады, мысалы, тұрған жерінде бипер бар ма, жанында кедергілер бар ма және ол қай бағытқа қарап тұр. Бағдарламашы бес негізгі команданы пайдаланып, қосымша командаларды анықтай алады, сондай-ақ орта туралы сұрақтармен және қайталау конструкциясын қолданып, егер және кезде шартты басқару операторларын пайдалана алады.

Ерекшеліктер

Келесі іске асыру Python бағдарламалау тіліндегі Karel болып табылады. Басқа да іске асырулар қол жетімді.

Бастапқы функциялар

Төменде қарапайым функциялар келтірілген. move: Карел бетіне қарап тұрған бағытта бір шаршыға жылжиды. turn left: Карел солға 90 градусқа бұрылады. put beeper: Карел ағымдағы шаршысына белгіні қояды. pick beeper: Карел ағымдағы шаршысынан белгіні алып жасайды. paint corner (ТҮС АТЫ): Карел ағымдағы бұрышын түспен бояйды. Қол жетімді түстердің саны шектеулі.

Түрлері мен ұрпақтары

Бұл тіл әртүрлі клондар мен ұқсас білім беру тілдерін дамытуға түрткі болды. Тіл жаңадан бастаушыларға арналғандықтан, кейбір тілдерде, әсіресе чех тілінде жергілікті нұсқалары бар (бұл бағдарламалау тілі Чехословакияда кең таралған). Карелдің принциптері жаңа бағдарламалау тілінде, яғни Karel++ тілінде объектіге бағытталған бағдарламалау парадигмасына жаңартылды. Karel++ түсінік бойынша Карелге негізделген, бірақ Java-ға ұқсас толығымен жаңа синтаксис қолданады. REALbasic ортасындағы rbKarel іске асырылуы RBScript ортасында негізгі Карел командаларын ұсынады, ал BASIC синтаксисі циклдар мен шарттар үшін қолданылады. Бұл оқу жобасы Карел эксперименттері үшін бір қадамдық орындау және дыбыстық шығыс мүмкіндіктерін қамтитын платформааралық GUI ұсынады. Карелден шабыттанған "Эмиль роботы" тілі мен ортасы робот әлемінің 3D көрінісін пайдаланады. Эмиль роботы қабырғаларды, терезелерді (мөлдірлігімен), су мен шөпті бейнелеуге арналған көптеген нысандарды ұсынады. Камераны 3D ортада еркін жылжытуға болады. Роботты GUI-дағы батырмалармен немесе Эмильдің Карел сияқты бағдарламалау тілінде жазылған бағдарламалар арқылы интерактивті түрде басқаруға болады. Автор бағдарламаны мектептер, студенттер және балалар тегін пайдалана алатынын мәлімдейді. Нұсқалар ағылшын, чех және словак тілдерінде қолжетімді. FANUC Robotics роботтарын бағдарламалау үшін де Karel деп аталатын меншік тіл қолданылады. Алайда, FANUC Karel тілі Pascal-дан туындаған. Сондай-ақ, тіл CodeHS-тің JavaScript-тегі "Карел – Ит" (Karel the Dog) ретінде де іске асырылған. Түпнұсқа тілдегідей, бұл нұсқада да Карел желілік әлемде орналасқан. Бағдарламашылар бағдарламалау міндеттерін орындау үшін Карелдің қарапайым командалар жиынтығын пайдаланады және оған сүйенеді. Биперлерді қою мен алудың орнына, Карел – Ит теннис доптарын қояды және алады. Карелдің неміс тіліндегі нұсқасы "Робот Карол" деп аталады.