Придумавший Черепашку

    “Лого — инструмент для познания и развития собственного мышления, и в этом отличие этой среды от систем программирования, ориентированных в первую очередь на обеспечение наиболее эффективного использования аппаратуры” [1].

    Сеймур Пейперт пытался изучать работу мозга и однажды заметил, что “всегда рассматривал процесс обучения как хобби”. Следуя этому “хобби”, он осваивал такие разные виды деятельности, как пилотирование самолетов, чтение на китайском языке, “ремесло” иллюзиониста. Думая о процессах мышления, Пейперт, подобно классическим рассеянным профессорам, иногда как бы терял связь с окружающим миром: однажды, пролетев полпути над Атлантикой, он вдруг вспомнил, что оставил свою жену в аэропорту Нью-Йорка [2].
    Пейперт родился в Южной Африке. Спустя какое-то время после окончания высшего учебного заведения, он получил ученую степень доктора математики, а затем провел пять лет в Женеве, работая с выдающимся швейцарским физиологом Жаном Пиаже. Теория Пиаже, согласно которой ребенок учится в процессе игры с окружающими его предметами, оказала на Пейперта сильное влияние. Вспоминая о своем детском увлечении автомобилями, Пейперт, например, сделал вывод, что именно интерес к ним открыл ему связь “объект — мысль” и облегчил в дальнейшем постижение математических абстракций.
    Решив, что объектом такого рода способен стать компьютер, Сеймур Пейперт перешел в 1964 году в Лабораторию искусственного интеллекта Массачусетсского технологического института (МТИ), где занялся этим новым направлением исследований [2, 3]. Пейперт был убежден, что учащиеся начальной школы и даже дошкольники могут научиться программировать. “Освоение языков — одно из увлекательнейших занятий для ребенка, — говорил он. — Каждый нормальный ребенок учится разговаривать. Почему бы ему не научиться “разговаривать” с компьютером?” При этом Пейперт считал, что даже Бейсик, простейший компьютерный язык того времени, слишком абстрактен для ребенка.
    Вскоре Пейперт и его коллеги создали новый язык на основе Лиспа, назвав его Лого (что по-гречески означает слово). По инициативе Пейперта в языке стала использоваться так называемая черепашка, обеспечивающая связь “объект — мысль” (сначала употреблялась механическая черепашка, ползающая по полу, а затем — ее условное изображение на экране). Как отмечал Пейперт, “компьютер обычно шаг за шагом ведет ребенка за собой”, а Лого, наоборот, “убеждает ребенка в том, что он способен управлять машиной, позволяет ребенку сказать: “Здесь я хозяин”. Сначала Лого предназначался для больших компьютеров и мини-компьютеров, имеющихся в МТИ, но потом проник в тысячи классов начальных школ.
    Таким образом, Лого — язык со встроенной черепашкой [2, 4], представляющей собой треугольный значок на экране компьютера, который возникает и движется в соответствии с командами, вводимыми с клавиатуры. Сперва новичок дает черепашке простые команды, наподобие ВПЕРЕД 100, что означает “передвинуться вперед на 100 шагов”, или ВЛЕВО 60, т.е. “сделать поворот влево на 60 градусов”. Такие команды можно использовать для составления небольших программ или процедур, формирующих геометрические фигуры — окружности, квадраты, треугольники, и эти процедуры, в свою очередь, можно объединять в более сложные процедуры и соответственно фигуры.
    Подобно своему “родителю” Лиспу, Лого относится к расширяемым языкам. Помимо встроенных операций (ВПЕРЕД, НАЗАД, ВПРАВО, ВЛЕВО), Лого позволяет программисту определять новые процедуры. Слово ДЛЯ указывает, что вы собираетесь определить процедуру: следующее слово — это имя процедуры, а слово КОНЕЦ указывает на завершение определения. После того как процедура определена, к ней можно обращаться. Надо набрать имя процедуры, и компьютер выполнит включенные в нее команды, например:

    ДЛЯ КВАДРАТ
    ПОВТОР 4 [ВПЕРЕД 100 ВПРАВО 90]
    КОНЕЦ

    ?КВАДРАТ

    Черепашка пройдет вперед 100 шагов и сделает поворот вправо на 90 градусов (так повторится четыре раза, пока не будет построен квадрат).
    Другая особенность Лого, делающая его простым для обучения, — отсутствие необходимости указывать заранее типы переменных, как это нужно делать, например, в Паскале. В Лого для обозначения переменных просто используется двоеточие.

    ДЛЯ ТРЕУГОЛЬНИК : РАЗМЕР
    ПОВТОР 3 [ВПЕРЕД : РАЗМЕР ВПРАВО 120]
    КОНЕЦ

    ?ТРЕУГОЛЬНИК 80

    Эта процедура формирует равносторонний треугольник, трижды повторяя команду, указанную в квадратных скобках. При ее выполнении переменной : РАЗМЕР, задающей длину стороны треугольника, присваивается значение 80 шагов.
    Во многом благодаря Сеймуру Пейперту сегодня практически любой дошкольник в процессе игры способен освоить программирование, которое несколькими десятилетиями раньше было доступно лишь небольшому количеству специалистов. И это лишь одна сторона дела...

    Литература
  
1. Юдина А.Г. Лого — среда для развития мышления // Информатика, № 33/95.
    2. Язык компьютера: Пер. с англ. М.: Мир, 1989.
    3. Компьютер обретает разум: Пер. с англ. М.: Мир, 1990.
    4. Зайцев А.А. Повесть о настоящей черепашке // Информатика, № 3/2001.

Hosted by uCoz