Karel

Материал из Поле цифровой дидактики
Краткое описание языка Программа на языке Karel управляет простым роботом Карелом, который живет в клеточном мире, расчерченном сеткой из улиц — стриты (слева направо) и авеню (сверху вниз). Карел понимает пять базовых команд: move (робот перемещается на одну клетку вперед), turnLeft (робот поворачивает на 90° влево), putBeeper (робот кладет бипер — издающее сигналы устройство, пищалка — на текущую клетку), pickBeeper (робот подбирает пищалку с текущей клетки) и turnoff (робот выключает себя, программа завершается).

Задачи для Karel: Некоторые примеры задач, которые можно выполнять с помощью Karel, включают в себя следующее:

  1. Проехать по лабиринту
  2. Найти предмет в массиве
  3. Собрать предметы в определенном порядке
  4. Написать алгоритм для поиска предметов в массиве
  5. Написать программу для поиска кратчайшего пути до определенной точки в лабиринте
  6. Написать программу для определения количества предметов в массиве
Компетенции в каких сферах формирует Empowered Learner, Computational Thinker
Парадигмы программирования Процедурное программирование
Возрастная категория 9
Назначение языка (Общее / Учебное) Мини-язык для обучения
Visual_Text_Blocks Текст
Измерение (2D/3D/Tangible) 2D
Открытость продукта Открытый
Address http://karel.sourceforge.net/
Предки (Ancestors) Josef, Pascal
Потомки (Descendants) Karel++, Guido van Robot
Активность в данный момент Project is active
Доступны ремиксы? Нет
Год создания 1981
Создатели Pattis, GenAI
Поясняющее видео
Используется для создания мобильных приложений? Нет
Karel упоминается в свойствах следующих страниц


turnLeft();

move();


Karel the Robot has been one of the most widely-used mini-languages. It was designed by Richard Pattis in 1980s for university students taking their introductory programming course (Pattis and Pattis 1994; Ruf, Mühling, and Hubwieser 2014). Karel is a robot that inhabits a simple grid world with streets running east-west and avenues running north-south. Karel’s world can also contain immovable walls and beepers. Karel can move, turn, turn himself off, and sense walls half a block from him and beepers on the same corner as him. A Karel simulator allows students to watch the progress of their programs step by step.

Karel was supported by a short textbook to help teachers incorporate Karel in their classes. The idea of the mini-language approach was to design a small and simple language to support the first steps in learning programming. The language included small set of commands that the actor can perform, and a set of value-returning queries and control structures. Most mini-languages include all basic control structures (conditional execution, looping, recursion, etc.) and a mechanism for creating some kind of sub-program. Karel contained main Pascal-like control structures to teach basic concepts including sequential execution, procedural abstraction, conditional execution, and repetition. The overhead of full high-level programming languages was reduced as there are no variables, types or expressions in Karel.

  • Richard E. Pattis. Karel The Robot: A Gentle Introduction to the Art of Programming. John Wiley & Sons, 1981. ISBN 0-471-59725-2.
  • Joseph Bergin, Mark Stehlik, Jim Roberts, Richard E. Pattis. Karel++: A Gentle Introduction to the Art of Object-Oriented Programming. John Wiley & Sons, 1996. ISBN 0-471-13809-6.
Karel + python

https://youtu.be/occdJMULsew