Логотип (язык программирования) - Logo (programming language)

Логотип
Реми turtlegrafik.png
Пример вывода логотипа
ПарадигмыМультипарадигма: функциональный, образовательный, процедурный, отражающий
СемьяЛисп
РазработаноУолли Ферзейг, Сеймур Паперт, Синтия Соломон
РазработчикБолт, Беранек и Ньюман
Впервые появился1967; 53 года назад (1967)
Печатная дисциплинадинамичный
Основной реализации
UCBLogo, многие другие
Диалекты
StarLogo, NetLogo и AppleLogo
Под влиянием
Лисп
Под влиянием
AgentSheets, NetLogo, Болтовня, Etoys, Царапать, Microsoft Small Basic, KЧерепаха, REBOL, Боксер

Логотип является образовательный язык программирования, разработанный в 1967 г. Уолли Ферзейг, Сеймур Паперт, и Синтия Соломон.[1] Логотип не является аббревиатурой: название было придумано Ферзейгом, когда он был Болт, Беранек и Ньюман,[2] и происходит от греческого логотипы, смысл слово или же мысль.

Язык общего назначения, Logo широко известен благодаря использованию черепаха графика, в которых команды перемещения и рисования производят линию или векторная графика, либо на экране, либо с помощью небольшого робота, называемого черепаха. Язык был задуман для обучения концепциям программирования, связанным с Лисп и только позже, чтобы включить то, что Паперт называл "телесно-синтонный рассуждение », где учащиеся могут понять, предсказать и рассуждать о движении черепахи, представив, что они бы сделали, если бы они были черепахой. Между многими диалектами логотипа есть существенные различия, и ситуация запутывается из-за регулярного появления черепахи графические программы с названием Logo.

Логотип - это мультипарадигма адаптация и диалект Лисп, а функциональное программирование язык.[3] Стандартного логотипа нет, но UCBLogo имеет лучшие возможности для обработки списков, файлов, ввода-вывода и рекурсия в скриптах и ​​может использоваться для обучения всем концепциям информатики, например Калифорнийский университет в Беркли лектор Брайан Харви сделал в его Стиль логотипа компьютерных наук трилогия.[4]

Логотип обычно интерпретируемый язык, хотя были разработаны скомпилированные диалекты Logo (такие как Lhogho и Liogo). В логотипе не учитывается регистр, но он сохраняет регистр, используемый для форматирования.

История

Логотип был создан в 1967 г. Болт, Беранек и Ньюман (BBN), а Кембридж, Массачусетс исследовательская фирма Уолли Ферзейг, Синтия Соломон, и Сеймур Паперт.[5] Его интеллектуальные корни в искусственный интеллект, математическая логика и развивающая психология. Первые четыре года исследований, разработки и преподавания Logo проводились в BBN. Первая реализация логотипа под названием Ghost была написана на LISP на PDP-1. Цель заключалась в создании математической страны, где дети могли бы играть словами и предложениями.[6] Созданный на основе LISP, дизайн логотипа включает доступную мощность[требуется разъяснение ] и информативные сообщения об ошибках. Использование виртуальных Черепахи позволяет мгновенно получать визуальную обратную связь и отладку графического программирования.

Первый рабочий Логотип черепаха робот была создана в 1969 году. Выставочная черепаха предшествовала физической напольной черепахе. Современный логотип не сильно изменился по сравнению с основными концепциями, предшествовавшими первой черепахе. Первая черепаха была бродягой на привязи, а не контролируется радио или же беспроводной. В BBN Пол Вексельблат разработал черепаху по имени Ирвинг, которая имела сенсорные датчики и могла двигаться вперед, назад, вращаться и звонить в колокольчик. Первые годовые школьные пользователи Logo были в 1968–69 в средней школе Муззи-младшего в г. Лексингтон, Массачусетс. Виртуальных и физических черепах впервые использовали пятиклассники в школе Бридж в том же городе в 1970–71 годах.

Черепаха и графика

Самая известная особенность логотипа - черепаха (происходит от одноименный робот ),[5] на экране "курсор ", который демонстрировал результат выполнения команд движения и небольшого выдвижного пера, вместе создавая линейную графику. Традиционно он отображался либо в виде треугольника, либо значка черепахи (хотя он может быть представлен любым значком). Графика черепахи была добавлена ​​в язык логотипов Сеймура Паперта в конце 1960-х годов в поддержку версии Паперта черепаха робот, простой робот, управляемый с рабочей станции пользователя, который предназначен для выполнения возложенных на него функций рисования с помощью небольшой выдвижной ручки, вставленной в тело робота или прикрепленной к нему.

На практике использование геометрии черепахи вместо более традиционной модели имитирует реальную логику движения робота-черепахи. Черепаха движется с командами, которые относятся к ее собственному положению, СЛЕВА 90 означает вращение влево на 90 градусов. Некоторые реализации логотипа, особенно те, которые позволяют использовать параллелизм и несколько черепах, поддерживают обнаружение столкновения и позволяют пользователю переопределить внешний вид курсора черепахи, по сути позволяя черепахам логотипа функционировать как спрайты.

Несколько черепах поддерживаются MSWLogo, а также 3D-графика. Вход с COM-портов и LPT-портов также разрешен MSWLogo через графический интерфейс Windows. Прерывания могут быть вызваны событиями клавиатуры и мыши. Простой Гифка анимации также могут быть созданы в MSWLogo версии 6.5 с gifsave команда.

Геометрия черепахи также иногда используется не только в Logo, но и в других средах, как альтернатива графической системе с строго координатной адресацией. Например, идея черепаховой графики также полезна в Система Линденмайера для создания фракталы.

Реализации

Экран приветствия логотипа IBM LCSI
Исходный код и вывод в IBM LCSI Logo, работающий в DOSBox

Некоторые современные производные от Logo позволяют тысячам независимо перемещаться черепах. Есть две популярные реализации: Массачусетский Институт Технологий с StarLogo и Северо-Западный университет Центр подключенного обучения (CCL) NetLogo. Они позволяют исследовать возникающие явления и идут с множеством экспериментов в социальных науках, биологии, физике и других областях. NetLogo широко используется в агентном моделировании в биологических и социальных науках.

Хотя нет согласованного стандарта, существует широкий консенсус по основным аспектам языка. В марте 2020 года насчитывалось 308 реализаций и диалектов логотипа, у каждого из которых были свои сильные стороны.[7] Большинство из этих 308 уже не широко используются, но многие все еще находятся в стадии разработки. Коммерческие реализации, широко используемые в школах, включают: Микромиры Логотип и Представьте себе логотип.

Унаследованные и текущие реализации включают:

  • Логотип Apple для Apple II Plus и Apple Logo Writer для Apple IIe, разработанные Logo Computer Systems, Inc. (LCSI), были наиболее широко используемыми и распространенными ранними реализациями Logo, пика которых приходилось на период с начала до середины 1980-х годов.
  • ЛОГОТИП Aquarius был выпущен в 1982 году на картридже Mattel для Водолей домашний компьютер.
  • Логотип Atari был выпущен на картридже Atari для Семейство 8-битных Atari.
  • Цветной логотип был выпущен в 1983 году на картридже (26-2722) и диске (26-2721) компанией Tandy для Цветной компьютер TRS-80.
  • Логотип Commodore был выпущен с подзаголовком "Язык для обучения" Commodore Electronics. Он был основан на логотипе MIT и усовершенствован Terrapin, Inc. Коммодор 64 версия (C64105) была выпущена на дискете в 1983 г .; то Плюс / 4 версия (T263001) была выпущена на патроне в 1984 году.[8][9]
  • ExperLogo был выпущен в 1985 году на дискете компанией Expertelligence Inc. для Macintosh 128K.
  • Hot-Logo был выпущен EPCOM в середине 1980-х годов для MSX 8-битные компьютеры с собственным набором команд на бразильском португальском языке.
  • Логотип TI (для TI 99 / 4A computer) использовался в начальных школах, подчеркивая полезность Logo в обучении основам вычислительной техники начинающих программистов.
  • IBM продавала свою собственную версию логотипа (P / N 6024076), совместно разработанную Logo Computer Systems, Inc. (LCSI), для своего тогда еще нового ПК IBM.
  • UCBLogo, также известный как логотип Berkeley, представляет собой бесплатную кроссплатформенную реализацию стандартного логотипа, последний раз выпущенного в 2009 году. Джордж Миллс из Массачусетского технологического института использовал UCBLogo в качестве основы для MSWLogo который более изысканный и бесплатный. Джим Мюллер написал книгу, Великое приключение с логотипом, который был полным руководством по логотипу и использовал MSWLogo в качестве демонстрационного языка. Сейчас он не издается, но Джим выпустил все файлы в формате pdf. (Подробности см. На веб-сайте Logo Foundation.) MSWLogo превратился в FMSLogo: среда образовательного программирования.
  • ObjectLOGO это вариант с объектно-ориентированными расширениями.
  • aUCBLogo переписывание и улучшение UCBLogo.
  • Logo3D - это трехмерная версия Logo, которую можно найти по адресу Логотип (язык программирования) на SourceForge.net.
  • Доктор Логотип был разработан Цифровые исследования и распространяется на компьютерах, включая IBM PCjr[10] и Амстрад КТК.[11][12][13]
  • Логотип Acornsoft был выпущен в 1985 году для BBC Micro и Acorn Electron.
  • В феврале 1990 г. Электронный пользователь опубликовал простую реализацию логотипа Тимоти Грэнтэма для Желудь Электрон по статье «Говорящая черепаха».[14]
  • LibreLogo является расширением некоторых версий LibreOffice. Выпущенный в 2012 году, он написан на [[Python (язык программирования) | Python]. Это позволяет писать векторную графику в Writer.
  • По крайней мере, две веб-реализации с использованием логотипа Berkeley, HTML5, CSS3 и JQuery можно найти.
  • БАССЕЙН - диалект Logo с объектно-ориентированными расширениями, реализованный в 2014 году. Программы POOL компилируются и запускаются в графической среде IDE на Майкрософт Виндоус. Упрощенная кроссплатформенная среда доступна для систем, поддерживающих .NET Framework.
  • QLogo это кроссплатформенная переписанная версия с открытым исходным кодом UCBLogo с почти полной совместимостью с UCB, использующей графику с аппаратным ускорением.

ObjectLOGO это вариант логотипа с объектно-ориентированного программирования расширения и лексическая область видимости. Версия 2.7 была продана Digitool, Inc.[15] Он больше не разрабатывается и не поддерживается, а также не работает в версиях операционной системы Mac старше 7.5.[16]

Лего Логотип это версия логотипа, которая может управлять роботизированными конструктор Лего кирпичи прикреплены к компьютеру.[17] Это было реализовано на Яблоко II вычислительная платформа и использовалась в американских и других начальных школах в конце 1980-х - начале 1990-х годов.[18] Логотип Lego является предшественником Царапать.

Логотип Acornsoft коммерческая реализация логотипа для 8-битных BBC Micro и Желудь Электрон компьютеры.[19] Логотип Acornsoft был разработан для Желудь Компьютеры как полная реализация Logo. Он имеет несколько экранов черепахи и четырехканальный звук. Он был предоставлен на двух по 16кБ ПЗУ, с коммунальными услугами и водители в качестве сопутствующего программного обеспечения.[20]

Влияние

Логотип оказал основное влияние на Болтовня язык программирования. Это также основное влияние на Etoys среда и язык образовательного программирования, который по сути является вариантом логотипа, написанным на Писк (сам вариант Болтовня ). Логотип повлиял на модель процедуры / метода в AgentSheets и AgentCubes для программных агентов, подобных понятию черепахи в Logo. Логотип стал основным языком для Boxer. Boxer был разработан в Калифорнийский университет в Беркли и MIT и основан на модель грамотности, что упрощает использование для нетехнических людей.[нужна цитата ]

KЧерепаха это вариант логотипа, реализованный на Qt для KDE среда, основанная на логотипе.[21]

Еще два результата влияния логотипа: Коджо, вариант Scala и Царапать, визуальный язык перетаскивания, работающий в веб-браузере.

В 2015 г. Cubetto образовательная робототехническая система для детей в возрасте от трех лет и старше была разработана за счет краудсорсингового финансирования. Cubetto находился под влиянием как логотипа, так и Монтессори. Cubetto представляет собой маленькую кубическую черепаху, которая поворачивается только на 90 градусов.[22] Cubetto был описан как обновление системы TORTIS с логотипом MIT.[23]

Смотрите также

Рекомендации

  1. ^ Абельсон, Хэл; Гудман, Нат; Рудольф, Ли (декабрь 1974 г.). "Руководство по логотипу". Лаборатория искусственного интеллекта, Массачусетский технологический институт. В архиве из оригинала 11 сентября 2016 г.. Получено 28 августа, 2016.
  2. ^ Гольденберг, Э. Пол (август 1982 г.). «Логотип - культурный глоссарий». Байт. п. 218. Получено 19 октября 2013.
  3. ^ CSLS Том 1, Предисловие .pxvi, Харви 1997
  4. ^ Стиль логотипа компьютерных наук, Брайан Харви, MIT Press (3 тома) ISBN  0-262-58148-5, ISBN  0-262-58149-3, ISBN  0-262-58150-7. Имеется в наличии онлайн В архиве 2013-07-04 в Wayback Machine
  5. ^ а б «Фонд логотипа». el.media.mit.edu. Архивировано из оригинал на 2011-07-21. Получено 2011-04-07.
  6. ^ "logothings". logothings.wikispaces.com. В архиве из оригинала от 07.12.2011.
  7. ^ «Проект дерева логотипов» (PDF). elica.net. Архивировано из оригинал (PDF) на 2009-03-06. Получено 2020-03-25.
  8. ^ Мозг, Джим; Циммерман, Бо (2017-10-30). «Канонический список продуктов Commodore». В архиве из оригинала на 20.12.2017. Получено 2017-12-03.
  9. ^ «Логотип - Сведения о программном обеспечении». Плюс / 4 Мир. В архиве из оригинала на 2017-12-04. Получено 2017-12-03.
  10. ^ «DRI поставляет версию Dr. Logo 128K» (PDF). Микро заметки - Техническая информация о продуктах Digital Research. 2 (2). Пасифик Гроув, Калифорния, США: Digital Research, Inc. Май 1984. с. 4. NWS-106-002. В архиве (PDF) из оригинала на 2020-02-11. Получено 2020-02-11. […] Доктор Лого впервые появился на розничном рынке осенью 1983 г. IBM PC и поднялся на вершину Горячий список Softsel. В розничную версию включены SpeedStart CP / M, сокращенная версия CP / M который загружается автоматически при включении системы. […] [1]
  11. ^ Логотип DR Digital Research
  12. ^ Amstrad CPC 6128 - История вычислений
  13. ^ Инструкция Amstrad PCW 8256/8512
  14. ^ Говорящая черепаха В архиве 2017-03-28 в Wayback Machine стр.20 и 21
  15. ^ Логотип объекта В архиве 2008-04-30 на Wayback Machine страница на веб-сайте Digitool (по состоянию на 4 марта 2008 г.)
  16. ^ Страница заказа логотипа объекта на веб-сайте Digitool (по состоянию на 4 марта 2008 г.)
  17. ^ Наборы для построения поведения
  18. ^ Лего / ЛОГОТИП проекта В архиве 2011-07-20 на Wayback Machine в UCLS
  19. ^ Филд, Грэм (1985). ЛОГОТИП на компьютере BBC и Acorn Electron. Macmillan. ISBN  0-333-39566-2.
  20. ^ Рэдберн, Дерек. «Четыре логотипа BBC Micro». Специальное образование для микропользователей. Микропользователь. Получено 20 февраля, 2012.
  21. ^ «Образовательный проект KDE - KTurtle». edu.kde.org. В архиве из оригинала 27.08.2006.
  22. ^ "Cubetto: игрушечный робот, обучающий детей программированию и программированию". Primo Toys. В архиве из оригинала от 02.09.2016.
  23. ^ «ОЗНАКИ Проект». harveycohen.net. В архиве из оригинала от 20.08.2016.

дальнейшее чтение

  • Великое приключение с логотипом, Джим Мюллер, Doone Publications ISBN  0-9651934-6-2; сейчас не издается; можно бесплатно загрузить в формате pdf с веб-сайта MSWLogo вместе с бесплатной программой MSWLogo
  • К искусственному интеллекту (1976) Ранний учебник по искусственному интеллекту, в котором широко используется логотип. (С использованием Эдинбургский университет диалект, AI2LOGO)
  • Геометрия черепахи Абельсон и ди Сесса
  • Детские конструкторы, Идит Харел Капертон, Ablex Publishing Corporation ISBN  0893917885. Имеется в наличии онлайн
  • Обучение с логотипом, Дэниел Ватт, Макгроу Хилл, ISBN  0-07-068570-3. Доступно через Amazon
  • Преподавание с логотипом: строительные блоки для обучения, Молли Уотт и Дэниел Ватт, Эддисон Уэсли (ныне Пирсон) 1986, ISBN  0-201-08112-1 Доступно через Amazon

внешняя ссылка