Карел (язык программирования) - Википедия - Karel (programming language)
Парадигма | процедурный |
---|---|
Разработано | Ричард Э. Паттис |
Впервые появился | 1981 |
Диалекты | |
Некоторые языковые варианты с локализацией | |
Под влиянием | |
Паскаль | |
Под влиянием | |
Карел ++, AgentSheets, Гвидо ван Робот |
Карел является образовательный язык программирования для начинающих, созданный Ричард Э. Паттис в его книге Робот Карел: мягкое введение в искусство программирования. Паттис использовал этот язык на своих курсах в Стэндфордский Университет, Калифорния. Язык назван в честь Карел Чапек, а Чешский писатель, который ввел слово робот в его игре R.U.R.[1][2]
Принципы
А программа в Кареле используется для управления простым робот по имени Карел, живущий в среде, состоящей из сетки улиц (слева направо) и проспектов (вверх-вниз). Карел понимает пять основных инструкций: двигаться
(Карел движется на одну клетку в том направлении, куда смотрит), Поверните налево
(Карел поворачивается на 90 ° влево), putBeeper
(Карел ставит сигнал на площадь, на которой стоит), pickBeeper
(Карел снимает сигнал с площади, на которой стоит), и выключи
(Карел выключается, программа заканчивается). Карел тоже умеет логический спрашивает о его ближайшем окружении, спрашивает, есть ли пейджер, где он стоит, есть ли рядом с ним препятствия и в каком направлении он смотрит. А программист может создать дополнительные инструкции определяя их в терминах пяти основных инструкций и используя условные поток управления заявления если
и пока
с запросами среды и с помощью повторять
построить.[нужна цитата ]
Варианты и потомки
Этот язык вдохновил на разработку различных клонов и подобных образовательных языков. Поскольку язык предназначен для начинающих, для некоторых языков существуют локализованные варианты, в частности Чешский (язык программирования был довольно популярен в Чехословакия ).
Принципы Карела были обновлены до объектно-ориентированного программирования парадигма в новом языке программирования под названием Карел ++. Karel ++ концептуально основан на Karel, но использует совершенно новый синтаксис, аналогичный Ява.
Реализация REALbasic, rbKarel,[3] предоставляет основные команды Karel в среде RBScript с синтаксисом BASIC, используемым для циклов и условных выражений. Этот обучающий проект предоставляет кроссплатформенный графический интерфейс для экспериментов Карела, включая одноступенчатый и речевой вывод.
Вдохновленный карелами язык и среда под названием Робот Эмиль[4] использует 3D взгляд на мир роботов. Робот Эмиль предлагает большую палитру объектов, которые можно разместить для изображения стен, окон (прозрачность), воды и травы. Камеру можно свободно перемещать в трехмерном пространстве. Роботом можно управлять в интерактивном режиме с помощью кнопок в графическом интерфейсе или с помощью программ, написанных на языке программирования Эмиля Карела. Автор заявляет, что программа бесплатна для использования школами, студентами и детьми. Версии доступны в английский, Чешский и словацкий.
Проприетарный язык, который также называют Карел, используется для программирования роботов Робототехника FANUC. Однако FANUC Karel происходит от Паскаль.
Язык также был реализован как Собака Карел в JavaScript к CodeHS. Подобно оригинальному языку, эта реализация показывает Карела в сеточном мире. Программисты используют и развивают простой словарь команд Карела для выполнения задач программирования. Вместо того, чтобы ставить и собирать пищалки, Собака Карел кладет и берет теннисные мячи.
Смотрите также
- Образовательный язык программирования
- RoboMind - Привлекательная образовательная среда альтернативного программирования
- Руб. - еще один инструмент для изучения Python, основанный на идеях Карела.
- CodeHS - вводное обучение информатике с использованием Karel in JavaScript
дальнейшее чтение
- Ричард Э. Паттис. Робот Карел: мягкое введение в искусство программирования. Джон Уайли и сыновья, 1981. ISBN 0-471-59725-2.
- Джозеф Бергин, Марк Стехлик, Джим Робертс, Ричард Э. Паттис. Karel ++: мягкое введение в искусство объектно-ориентированного программирования. Джон Вили и сыновья, 1996. ISBN 0-471-13809-6.
Рекомендации
- ^ «Кто на самом деле изобрел слово« робот »и что оно означает?». Архивировано из оригинал 27 июля 2013 г.. Получено 25 июля 2013.
- ^ Марголиус Иван (Осень 2017) «Робот Праги» В архиве 11 сентября 2017 в Wayback Machine Информационный бюллетень друзей чешского наследия нет. 17, стр. 3-6
- ^ https://code.google.com/p/rbstuff/wiki/rbKarelOverview
- ^ http://www.emil.input.sk/info_en.htm
внешняя ссылка
- xKarel Р. Досталь и П. Абрахамчик (создан в 1997 г.)
- Карел Т. Митчелл (создан в 2000 г.)
- Карел в tiny-c Ли Брэдли (создан в 2013 году)
- Карел для iPad от CloudMakers (создан в 2014 г.)
- Карел в JavaScript по CodeHS
- Карел в Perl 5 Э. Чороба (создан в 2016 г.)
- Карел-3D в JavaScript и C ++ (sk) (en) (de) (es) (создан в 2017, 2018 гг.)
- Гвидо ван Робот (GvR) - Карел на Python (создан в 2006, 2010)