Путь черепахи: эволюция LOGO-подобных языков

Материал из Поле цифровой дидактики


Описание события Путь черепахи: эволюция Logo-подобных языков // В.В.Буров, Е.Д.Патаракин // VI международная конференция, «РАЗВИТИЕ ВЫЧИСЛИТЕЛЬНОЙ ТЕХНИКИ В РОССИИ, СТРАНАХ БЫВШЕГО СССР И СЭВ» Россия, Нижний Новгород, НИУ ВШЭ, 25–27 сентября 2023 года
Тип события Доклад
Начало 2023-09-25T10:00:32.000Z
Окончание 2023-09-26T16:13:32.000Z
color salmon
Адрес события https://www.sorucom.org/programma/
Видео запись события
Среды и средства, которые использовались в рамках события Logo, Snap!, NetLogo
Формируемые в рамках события компетенции
Область знаний Информатика
Местоположение 56° 19' 29.87" N, 44° 1' 23.83" E
Формат реализации
Карта


Аннотация
Logo это название философии образования и, одновременно, постоянно развивающегося семейства языков программирования, как помогающих в ее реализации так и решающих такие задачи, как наглядное многоагентное моделирование для различных областей научных исследований. Статья рассматривает развитие многочисленных потомков языка Logo, изначально созданного в 1967 для обучения школьников математике и алгоритмам, включая советские и российские разработки. Кроме разнообразия направлений, в которых эволюционировал Logo, внимание уделено возникновению и развитию российского сообщества, связанного с этим языком.
https://www.iis.nsk.su/files/page/burov_v.v._patarakin_e.d.pdf
Ключевые слова – Logo, языки программирования, конструкционизм, сообщества

ВВЕДЕНИЕ

Появление вычислительной техники повлияло на образование как с точки зрения появления самостоятельной отрасли обучения, так и новых концепций образования в целом. Одним из наиболее ярких проявлений этого – выдвинутая Сеймуром Пейпертом (Seymour Papert) идея конструкционизма. Пейперт считал, что дети не выступают пассивными получателями знаний, а наоборот, сами их активно конструируют. Пейперт продолжил развивать подход известного идеолога конструктивизма в педагогике Жана Пиаже (Jean Piaget) — идею о том, что дети учатся быстрее всего, когда они сами формируют свои представления об увиденном и делают собственные заключения, а не когда им говорят, как они должны воспринимать мир. Эту идею Пейперт дополнил положением, что люди учатся лучше, если они вовлечены в создание конкретных объектов, которые им сами интересны. При этом ставку он сделал не на традиционные формы обучения, а на только начавшие тогда становиться массовыми компьютеры, приехав работы с Пиаже в Швейцарии в Массачусетский технологический институт (MIT), где вместе с Марвином Мински (Marvin Lee Minsky) стал основателем знаменитой лаборатории искусственного интеллекта.


Одним из продуктов этой работы стало появление языка Logo – ставшего одновременно и символом нового философского подхода в образовании, и важной точкой в развитии языков программирования, и родоначальником целой группы специализированных языков программирования, выходящих за рамки чисто образовательных целей. В этой статье представлены исторический фон и цели создания Logo, а также его отражение в России, в виде как самостоятельных реализаций, так и формирования сообщества вокруг образовательных практик.

Во многих публикациях название оригинального языка пишут как LOGO, что не совсем корректно. Название Logo не является акронимом, а происходит от греческого ‘logos’ [1]. Поэтому мы будем употреблять именно оригинальное написание наименования.

ИСТОРИЯ СОЗДАНИЯ

Первый интерпретатор Logo появился в 1966 году на компьютере PDP-1 [2]. Он был написан Даниэлем Боброу (Daniel Bobrow) в компании Bolt Beranek and Newman, Inc. (BBN) и стал одним из результатов активно развивавшегося в 60-е годы сотрудничества BBN с MIT в сфере искусственного интеллекта, в первую очередь c лабораторией искусственного интеллекта Марвина Мински. Их исследовательские проекты в области искусственного интеллекта включали понимание естественного языка, распознавание образов и обучение с помощью компьютера.

К этому времени, Боброу уже создал в рамках своей диссертации систему STUDENT для решения алгебраических задач, известную как одно из первых успешных приложений искусственного интеллекта [3]. При этом в создании Logo он выступил именно как программист, сама же концепция языка была разработана незадолго перед этим приехавшим из Швейцарии в лабораторию Минского в MIT Сеймуром Пейпертом, а также Уолесом Фёрзигом (Wally Feurzeig), и Синтией Соломон (Cynthia Solomon).

Как позже отмечал Фёрзиг, катализатором внимания BBN к тематике образования послужил успех компании в реализации концепции разделения времени – BBN продемонстрировала первый успешный компьютер с разделением времени в 1964 году. [4] В условиях очень дорогого в 60х машинного времени, это показало потенциал для проникновения компьютеров в образование в будущем – за долго до революции персональных компьютеров.

Концепция языка программирования, предназначенного для студентов и обучения, возникла в результате исследовательской работы в системах разделения времени в классах, которая помогла детям изучать математику. Это исследование было проведено с использованием языка TELCOMP в 1965-66 годах при поддержке Управления образования США. В исследовательскую группу входили четверо сотрудников BBN – Уоллес Фёрзейг, Даниэлем Боброу, Ричард Грант (Richard Grant) и Синтия Соломон, – и Сеймур Пейперт из Массачусетского технологического института. [5]. Пейперт отвечал за функциональные спецификации, а Боброу отвечал за разработку первой реализации [4]. Название Logo было придумано Фёрзейгом, чтобы подчеркнуть тот факт, что язык является символическим, а не количественным [1].

Первоначально постановка целей разработки Logo BBN '67 выглядела так [4]:

  1. Третьеклассники должны иметь возможность использовать его для простых задач с очень небольшой подготовкой.
  2. Его структура должна включать математически важные концепции с минимальным вмешательством в соглашения программирования.
  3. Он должен позволять выражать математически богатые нечисловые, а также численные алгоритмы.

Большинство языков того времени плохо поддерживали нечисловые вычисления и не имели хороших функций взаимодействия (отладки и редактирования). В результате команда разработала систему с высокой интерактивностью. Также требованием была поддержка файловой системы для возможности сохранить и продолжить потом работу учеников. [2]. Также, изначально как ключевые особенности языка Logo рассматривались модульность, расширяемость, интерактивность и гибкость. Эти конструктивные особенности тесно связаны с образовательными целями языка [6].

Но задумка в создании Logo была более глубокой. Он создавался не только – и не столько – для того, чтобы обучать навыкам программирования. Цель была более глобальной: обучение метакогнитивным навыкам и решению проблем, реализуя с помощью компьютера зарождавшуюся тогда концепцию конструкционизма Пейперта [7].

 Description
КонструкционизмКонструкционизм - философия обучения, развитая Сеймуром Пейпертом на основании конструктивизма. К активной позиции конструктивизма конструкционизм добавляет идею того, что люди создают новое знание особенно эффективно, когда они вовлечены в создание продуктов, наделенных личностным смыслом, будь то песочные замки, Лего машины или компьютерные программы.

Предварительная версия Logo 1967 года состояла из 20 команд и 14 встроенных функций. На Рис.1 показана простейшая демонстрационная программа, написанная для этого интерпретатора [8]. Поскольку он был разработан в некотором смысле как «детская» версия LISP, Logo находится под сильным его влиянием. Исходный интерпретатор для PDP-1 был написан на LISP, и в его среде было возможно выполнение s-выражении с помощью команды LISP. А в разработке следующей версии в 1968 году принял участие один из разработчиков первой реализации LISP Майкл Левин (Michael Levin). Такие концепции LISP как сборка мусора, рекурсия и манипуляции с символами, заняли центральное место в Logo [2].

Первая версия LOGO была протестирована на учащихся шестого и седьмого классов полевой школы Hanscom в Линкольне, штат Массачусетс, в июле 1967 года. Но, как это не удивительно, в той версии отсутствовало то, что все сейчас неразрывно связывают с языком Logo – не было виртуального исполнителя «черепаха» и ни одной связанной с этим команды.

Она появилась только в следующей версии. Cперва это было реальное физическое устройство, которое подключалось к компьютеру, ставилось большой лист бумаги и могло рисовать на нем, подчиняясь командам компьютера, таким как LEFT, RIGHT, FORWARD или BACK. Позже, в 70-х, даже появились коммерческие компании, производившие этих аппаратных черепах на коммерческой основе, например Terrapin Software. А затем черепаха стала спрайтом на графическом экране компьютера, который мог рисовать линии и картинки, используя те же команды черепах, которые управляли аппаратными черепахами [6].


В итоге, в первую официальную версию Logo, выпущенную BBN в 1968 году, были добавлены команды управления «Черепахой». Эта версия содержала 38 команд, 45 встроенных функций и 12 зарезервированных имен. Здесь показан пример кода с управлением Черепахой, использованный как демонстрационный пример Пейпертом [9].


Код Logo для управления Черепахой
TO ROLL :DISTANCE
IF :DISTANCE = 0 [stop]
CIRCLE 360
FORWADD 10
ROLL :DISTANCE - 1
END 

TO POLY :STEP :ANGLE
FORWARD :STEP
RIGHT :ANGLE
POLY :STEP :ANGLE
END

TO POLYSPI :STEP :ANGLE
FORWARD :STEP
RIGHT :ANGLE
POLY :STEP + 10 :ANGLE
END

С сентября 1968 года по ноябрь 1969 года она использовалась при обучении математике в начальной и средней школе в рамках годичного исследовательского проекта Национального научного фонда [4]. После этого центр дальнейшего развития Logo переместился из BBN в Массачусетский технологический институт. Вокруг Пейперта собралась группа, которая занималась исследованиями и разработками в области Logo и развитием практического воплощения идей конструкционизма. До конца 1970-х годов Logo фактически не использовался за пределами местных школ недалеко от Массачусетского технологического института, а также в Эдинбурге (Шотландия) и Тасмании (Австралия) – где в университетах образовались партнерские исследовательские группы. [6]

РАЗВИТИЕ ЯЗЫКА LOGO И ЕГО НАСЛЕДНИКИ

(Logo OR Ancestors
Logo)

January 1, 1967

Лого

Launch year: 1967
Ancestors: Lisp
Descendants: NetLogo
Descendants: Scratch
Descendants: Snap!
Descendants: Squeak
Descendants: Boxer
Descendants: Lynx

January 1, 1980

Josef

Launch year: 1980
Ancestors: Лого
Descendants: Karel

January 1, 1980

Smalltalk

Launch year: 1980
Ancestors: Лого
Ancestors: Lisp
Descendants: Squeak
Descendants: Etoys
Descendants: Ruby
Descendants: Pharo

January 1, 1984

Boxer

Launch year: 1984
Ancestors: Лого
Descendants: OpenAI Codex

January 1, 1984

LogoWriter

Launch year: 1984
Ancestors: Лого

January 1, 1989

StarLogo

Launch year: 1989
Ancestors: Лого
Descendants: NetLogo
Descendants: StarLogo Nova
Descendants: Scratch

January 1, 1992

UCB Logo

Launch year: 1992
Ancestors: Лого
Ancestors: Lisp
Descendants: NetLogo
Descendants: Etoys
Descendants: FMSLogo

January 1, 1994

AlgoBlock

Launch year: 1994
Ancestors: Лого

January 1, 1996

LogoBlocks

Launch year: 1996
Ancestors: Лого
Descendants: Lego Mindstorms

January 1, 1999

NetLogo

Launch year: 1999
Ancestors: Лого
Ancestors: StarLogo
Descendants: StarLogo Nova
Descendants: AgentScript
Descendants: GAMA

January 1, 2000

ПервоЛого

Launch year: 2000
Ancestors: Лого

January 1, 2006

Scratch

Launch year: 2006
Ancestors: Лого
Ancestors: Squeak
Ancestors: Agentsheets
Descendants: Snap!
Descendants: App Inventor
Descendants: GP
Descendants: ScratchJR

January 1, 2008

KTurtle

Launch year: 2008
Ancestors: Лого
Ancestors: Kumir

January 1, 2010

App Inventor

Launch year: 2010
Ancestors: Scratch
Ancestors: Лого
Ancestors: Blockly
Descendants: Thunkable

January 1, 2010

Snap!

Launch year: 2010
Ancestors: Scratch
Ancestors: Лого
Ancestors: Lisp
Ancestors: Smalltalk
Ancestors: Scheme
Descendants: NetsBlox
Descendants: SciSnap!
Descendants: SQLsnap!
Descendants: DBSnap

January 1, 2015

GP

Launch year: 2015
Ancestors: Scratch
Ancestors: Лого

January 1, 2015

NetsBlox

Launch year: 2015
Ancestors: Scratch
Ancestors: Snap!
Ancestors: Лого

January 1, 2017

StarLogo Nova

Launch year: 2017
Ancestors: NetLogo
Ancestors: Scratch
Ancestors: Лого

January 1, 2018

DBSnap

Launch year: 2018
Ancestors: Scratch
Ancestors: Snap!
Ancestors: Лого

 
Josef
January 1, 1980

Лого

Josef

Smalltalk

Boxer

LogoWriter

StarLogo

UCB Logo

AlgoBlock

LogoBlocks

NetLogo

ПервоЛого

Scratch

KTurtle

App Inventor

Snap!

GP

NetsBlox

StarLogo Nova

DBSnap

1830
1840
1850
1860
1870
1880
1890
1900
1910
1920
1930
1940
1950
1960
1970
1980
1990
2000
2010
2020
2030
2040
2050
2060
2070
2080
2090
2100
2110
2120
2130
1954
1955
1956
1957
1958
1959
1961
1962
1963
1964
1965
1966
1967
1968
1969
1971
1972
1973
1974
1975
1976
1977
1978
1979
1981
1982
1983
1984
1985
1986
1987
1988
1989
1991
1992
1993
1994
1995
1996
1997
1998
1999
2001
2002
2003
2004
2005
2006
2007
2008
2009
2011
2012
2013
2014
2015
2016
2017
2018
2019
2021
2022
2023
2024
2025
2026
2027
2028
2029

После публикации в 1980 году книги Сеймура Пейперта Mindstorms [5] интерес к Logo резко возрос, плюс это совпало с массовым появлением домашних и школьных компьютеров. В результате было выпущено множество версий Logo для них. Язык широко поддерживался тогдашними лидерами рынка Apple, Atari, IBM и TI. Atari даже создала Кембриджский исследовательский центр Atari, которым руководила Синтия Соломон, возглавлявшая программу обучения учителей использованию Logo на занятиях. Поддерживали Logo и популярные игровые компьютеры Commodore, для которых в интерпретаторы добавляли «игровые» качества.

В результате к середине 80-х существовало три основных ветви языка Logo. Компания Logo Computer Systems, Inc. (LCSI), основанная Сеймуром Пейпертом, производила Apple Logo, Apple Logo II, Atari Logo и IBM Logo, и все программы, написанные на этих диалектах LCSI Logo, были независимыми от платформы и переносимыми. Другой разновидностью Logo, тесно связанной и совместимой с LCSI Logo, был MIT Logo – над которым продолжала работать команда Пейперта в Массачусетском технологическом. Эти версии работали на Commodore, Apple и IBM PC и продавались под названием Krell and Terrapin. Третьей разновидностью были системы Logo, созданные в компании LISP Machine, которые существенно отличались от других реализаций, больше напоминая LISP. Существовали и другие реализации Logo, некоторые из них не были совместимы с тогдашними стандартными системами LCSI и MIT LOGO [10].

Возникали и исследовательские модификации Logo для изучения различных вопросов в образовании. Например, Брайан Сильверман (Brian Silverman) и Майкл Темпл (Michael Temple) внесли элемент случайной ошибки в Logo, создав «Fuzzy Logo» – диалект который не всегда дает желаемые результаты. Стандартные команды «вправо», «влево», «вперед» и «назад» в нем имели «случайную ошибку до десяти процентов», так что команда «вперед 100» могла привести к перемещению черепахи между 90 и 110 единицами [11].

Интересным направлением стал LEGO Logo. В нем использовался более аппаратно-ориентированный подход, позволяя размещать источники света и моторы, размещенные в кубиках LEGO, и управлять ими с помощью программы в Logo. Его потомками с одной стороны стал ориентированный на самую младшую школьную аудиторию Scratch с его визуальным подходом к программированию, а с другой –линейка LEGO Mindstorm, занявшая место мирового стандарта для начального обучения в области робототехники.

Дальнейшие усилия Пейперта и его группы, ставших значимой частью Media MIT Lab, были направлены на перенос управляемого исполнителя Черепахи в компьютерную среду и разработку среды для обучения на базе высокоуровневого языка – Logo, Logo for Children и LogoWriter. LogoWriter был разновидностью LCSI Logo, содержавшей текстовый процессор и несколько черепах. Он был первым из потомков Logo, который действительно изменил среду программирования учащихся; пользовательский интерфейс стал более интуитивно-понятным, а пакет был переведен на многие языки – включая русский, о чем пойдет речь далее.

На идеях Logo построен NetLogo – переросший образовательную нишу и ставший одним из основных средств многоагентного моделирования в академической практике социальных наук и биологии.

NetLogo Web

Среди современных потомков также можно отметить Snap!, StarLogo Nova, Squeak и другие – выходящие уже за границу нашего исследования.

Snap!


StarLogo Nova

ПОТОМКИ LOGO В РОССИИ И ВОСТОЧНОЙ ЕВРОПЕ

Несколько мини-языков были разработаны с использованием Logo и широко использовались в СССР, например, Путник, Turingal и Turtoise [12]. Множество учебных проблем было связано с задачами управления простым агентом «Путником», перемещающимся по отмеченному полю со стенами. Формальная концепция исполнителя была разработана российскими исследователями Г.А. Звенигородским и А.Г. Кушниренко. Исполнитель включает агент, действующий в микромире, и небольшой набор команд и запросов к агенту, возвращающих значения. Концепция исполнителя делает возможным использование нескольких агентов в рамках одного языка программирования. Философия КуМир заключается в том, что язык имеет компактное ядро, которое можно динамически расширять путем загрузки одного или нескольких отдельно подготовленных модулей, то есть исполнителей с новыми микромирами и субъектами, или даже новых числовых пакетов и абстрактных типов данных. Такой подход позволяет легко настроить систему с несколькими исполнителями [14].

В странах Восточной Европы появились многочисленные потомки Черепашки Logo. Logo Comenius, мощная по своим возможностям версия Logo, была написана в Словацкой Республике [14]. KIDLOGO, компактный микромир для использования в детских садах и для специального образования, был разработан в Венгрии [15]. Geomland — версия Logo, включающая инструментарий эвклидовой геометрии, была разработана в Болгарии [16]. IconLogo, разработанный доктором Сергеем Сопруновым и его группой в Институте новых технологий в образовании (Москва), включал текстовый процессор, графический редактор и музыкальный синтезатор [17]. Другие российские программы, предназначенные для обучения алгоритмам и программированию, такие как МикроМир, Алгоритмика и Роботландия, также использовали концепцию исполнителя.


Такое разнообразие не породило какого-либо популярного в глобальном масштабе продукта, но явилось важной отправной точкой для развития сообщества вокруг конструкционистских подходом и обучения информационным технологиям.

РАЗВИТИЕ LOGO-СООБЩЕСТВА В РОССИИ

Ставший в определенном смысле революционным LogoWriter представлял собой сочетание языка программирования, текстового процессора, графики и анимации. LogoWriter, безусловно, был хорошим инструментом для реализации проектно-ориентированного подхода – и стал катализатором для формирования российского сообщества и ряда интересных проектов. В России его продвигал и поддерживал Институт новых технологий в образовании [18].

Формирование сетевого сообщества российский преподавателей, использующих в своей практике язык Logo и его разновидности, такие как LogoWriter, Splash LogoWriter, LogoExpress и MSWindows Logo, началось в начале 1990-х годов и было связано с организацией летних компьютерных школ в г. Переславль и информационно-образовательной сети «Uchcom», созданной в 1992 году Институтом программных систем Российской Академии Наук. Uchcom специализировался на таких аспектах образования, как физика, математика, когнитивная психология, мультимедиа. Однако Logo Media была самой успешной работой в Uchcom, потому что LogoWriter активно использовался в телекоммуникационных проектах: Космонавт (была реализована идея «чата»), Компьютерный театр (реализована идея телеконференции), Микромир (реализована идея переписки), Фантастический мир (реализована идея упоминания) [19]. Это базировалось на возможности делиться работами и объединять страницы LogoWriter в совместный проект.

Целью Logo Media было исследование образовательных возможностей телекоммуникаций в среде Logo и создание телекоммуникационной ассоциации русских пользователей Logo. В июле 1993 года участники проекта из разных городов России (Москва, Санкт-Петербург, Череповец, Ярославль, Нижний Новгород, Саранск, Омск, Норильск) приняли участие в двухнедельном семинаре Международной компьютерной школы в Переславле-Залесском. Школа имела телекоммуникационный доступ в Интернет и могла распространять свои материалы через образовательную сеть «ТВ-ИНФОРМ».

Телекоммуникации Logo и LogoNet — это термины, используемые для описания возможности общения групп учеников и преподавателей в разных местах по Интернету через программный интерфейс LogoExpress и LogoNet [20]. Участники сети обменивались статическими текстовыми, графическими и цифровыми видеоизображениями LogoWriter, отформатированными в виде файлов LogoWriter. Таким образом, ученики в Переславле-Залесском могли «общаться» с учениками в Омске и делиться друг с другом историями, графикой и картинками.

ВЫВОДЫ И ЗАКЛЮЧЕНИЕ

Графика черепашки Logo оказала огромное влияние на формирование направления мини-языков, первым из которых была графика черепашки Logo. У мини-языков скромный синтаксис и простая семантика. Поэтому ученик, даже очень маленький, может овладеть всем мини-языком и использовать его, получая интересные результаты. Второе важное преимущество состоит в том, что мини-языки построены на интересных и визуально привлекательных метафорах. В каком-то смысле все языки с графическим исполнителем, активно используемые в образовании, являются потомками Logo. Как писал Петр Брусиловский (Petr Brusilovsky), используя большинство существующих мини-языков, «ученик узнает, что такое программирование, изучая, как управлять действующим субъектом, которым может быть черепаха, робот или любой другой активный агент, действующий в микромире» [13]. Хотя действующим агентом может быть и физическое устройство, ученик обычно имеет дело с программной моделью такого устройства и наблюдает за поведением исполнителя на экране. Действующий агент может выполнять небольшой набор команд и отвечать на несколько запросов, возвращающих значения. Обычно ученик управляет агентом сначала посредством отдельных команд, затем посредством написания небольших программ на специальном мини-языке программирования.

Logo оказал влияние на российское образование, не только представив отдельный язык программирования и его потомков, но и сформировав международную культуру Logo, в которой можно делиться радостью от обучения, использовать свои ошибки в творческом контексте, работать с учениками и учителями как с партнерами в научно-исследовательской группе. В конце двадцатого века Черепаха Logo была интересным граничным объектом [21], который объединил людей из разных стран и разных профессиональных сообществ.


К сожалению, сегодня в России нет известных проектов, продолжающих развитие семьи Logo как новых учебных или специализированных языков программирования. Однако на опыте ранних сообществ, сформированных вокруг Logo, живет и активно развивается сообщество Scratch, включающее как учителей и учеников, появляются успешные коммерческие проекты, базирующиеся на этой базе, такие как Robbo (ранее ScratchDuino). turnmotorsonfor1secs 
Что позволяет надеяться, что когда-то может вернуться и активная позиция в разработке и перспективных исследованиях.

СПИСОК ЛИТЕРАТУРЫ

  1. Goldenberg, E. Paul. "Logo – A Cultural Glossary". Byte. August 1982 p. 218.
  2. Weiner, W. et al. The LOGO Processor: A Guide for System Programmers. Volume 4. Cambridge, MA. Bolt Beranek and Newman, Inc.
  3. Norvig, Peter. Paradigms of artificial intelligence programming:case studies in Common Lisp. San Francisco, California: Morgan Kaufmann. pp. 109–149. 1992. ISBN 1-55860-191-0.
  4. Feurzeig, W. The LOGO Lineage. Digital Deli. Workman Publishing Company, New York, NY. 1984.
  5. Papert, S. Mindstorms: Children, Computers, and Powerful Ideas. Basic Books. New York, NY. 1980.
  6. Logo History https://el.media.mit.edu/logo-foundation/what_is_logo/history.html
  7. Tayla, Robert (editor). The Computer in the School. Teacher College Press, Columbia University, NY. 1980.
  8. Frazier, F. The LOGO System: Preliminary Manual. Cambridge, MA. BBN. 1967.
  9. Papert, S. (1972). Teaching Children Thinking. Programmed Learning and Educational Technology, 9(5), 245–255. https://doi.org/10.1080/1355800720090503
  10. Harvey, B. Computer Science LOGO Style: Intermediate Programming. Volume 1. The MIT Press, Cambridge, MA. 1985.
  11. Fuzzy Logo http://cher.media.mit.edu/pub/logo/literature/Fuzzy_Logo.txt
  12. Brusilovsky P. et al. Mini-languages: a way to learn programming principles // Education and Information Technologies. 1997. Vol. 2, № 1. P. 65–83.
  13. Brusilovsky P. et al. Teaching Programming to Novices: A Review of Approaches and Tools. Vancouver, BC, Canada., 1994. P. 103–109.
  14. Blaho A., Kalas I., Tomcsanyi P. Comenius Logo: Environment for teachers and Environment for learners // Proceedings of the EUROLOGO. 1993. Vol. 93.
  15. Turcsányi-Szabó M. Approaching Arts through Logo // Proceedings of the Sixth European Logo Conference. 1997. P. 284–294.
  16. Sendov B., Sendova E. East orWest—GEOMLAND is Best, or Does the Answer Depend on the Angle? // Computers and exploratory learning. Springer, 1995. P. 59–78.
  17. Soprunov S., Yakovleva. The Russian School System and the Logo Approach: Two Methods Worlds Apart // Logo Philosophy and Implementation. Logo Computer Systems Incorporated, 1999.
  18. Parmentier C., Pervin Y. Les nouvelles technologies informatiques dans l’enseignement, un vecteur de la perestroïka // Bulletin de l’EPI (Enseignement Public et Informatique). 1992. № 67. P. 209–219.
  19. Patarakin E.D. New educational BBS established in Russia // Internet Society News. 1993. № 1. P. 14–14.
  20. Dickinson S. Logo Telecommunications: Crossing Boundaries and Opening Minds. 1995. P. 16.
  21. Wenger E. Communities of Practice: Learning, Meaning, and Identity. Cambridge University Press, 1999. 340 p.