Логотип (язык программирования)
Парадигмы | Мультипарадигмальность : функциональная , образовательная , процедурная , рефлексивная. |
---|---|
Семья | Лисп |
Разработано | Уолли Фёрзейг , Сеймур Паперт , Синтия Соломон |
Разработчик | Болт, Беранек и Ньюман |
Впервые появился | 1967 год |
Дисциплина набора текста | динамичный |
Основные реализации | |
UCBLogo и многие другие. | |
Диалекты | |
StarLogo , NetLogo и AppleLogo | |
Под влиянием | |
Лисп | |
Под влиянием | |
AgentSheets , NetLogo , Smalltalk , Etoys , Scratch , Microsoft Small Basic , KTurtle, REBOL , Boxer |
Logo — это образовательный язык программирования , разработанный в 1967 году Уолли Фёрзейгом , Сеймуром Пейпертом и Синтией Соломон . [1] Логотип не является аббревиатурой: название было придумано Фёрцайгом, когда он работал в компании Bolt, Beranek and Newman . [2] и происходит от греческого слова «логос» , что означает «слово» или «мысль».
Язык общего назначения Logo широко известен благодаря использованию черепашьей графики , в которой команды для перемещения и рисования создают линейную или векторную графику либо на экране, либо с помощью небольшого робота, называемого черепахой . Язык был задуман для обучения концепциям программирования, связанным с Лиспом , и лишь позже для того, чтобы сделать возможным то, что Пейперт называл « телесно-синтоническим рассуждением», когда студенты могли понимать, предсказывать и рассуждать о движении черепахи, представляя, что бы они сделали, если бы они были черепаха. Между многими диалектами логотипа существуют существенные различия, и ситуацию усложняет регулярное появление программ черепашьей графики под названием Logo.
Logo — это мультипарадигмальная адаптация и диалект Lisp, функционального языка программирования . [3] Стандартного логотипа нет, но у UCBLogo есть лучшие возможности. [ по мнению кого? ] для обработки списков, файлов, операций ввода-вывода и рекурсии в сценариях и может использоваться для обучения всем концепциям информатики, как это Калифорнийского университета в Беркли сделал преподаватель Брайан Харви в своей «Стиль логотипа компьютерных наук» . трилогии [4]
Логотип обычно является интерпретируемым языком , хотя были разработаны скомпилированные диалекты логотипа (такие как лого и лиого). Логотип не чувствителен к регистру, но сохраняет регистр, используемый для форматирования.
История
[ редактировать ]Логотип был создан в 1967 году в исследовательской фирме Bolt, Beranek and Newman (BBN) в Кембридже, штат Массачусетс , Уолли Фёрзейгом , Синтией Соломон и Сеймуром Пейпертом . [5] Ее интеллектуальные корни лежат в искусственном интеллекте , математической логике и психологии развития . В течение первых четырех лет работы над логотипом исследования, разработки и преподавание проводились в BBN. Первая реализация Logo, названная Ghost, была написана на LISP на PDP-1 . Целью было создать математическую страну, где дети могли бы играть со словами и предложениями. [6] Созданный по образцу LISP, цели дизайна Logo включали доступную мощность. [ нужны разъяснения ] и информативные сообщения об ошибках. Использование виртуальных черепах позволило обеспечить немедленную визуальную обратную связь и отладку графического программирования.
Первый работающий робот-черепаха Logo был создан в 1969 году. Демонстрационная черепаха предшествовала физической напольной черепахе. Современный логотип не сильно изменился по сравнению с основными концепциями, существовавшими до появления первой черепахи. Первая черепаха была привязанным напольным бродягой, а не радиоуправляемой или беспроводной . В BBN Пол Вексельблат разработал черепаху по имени Ирвинг, которая имела сенсорные датчики и могла двигаться вперед, назад, вращаться и звонить в колокольчик. Первые годичные пользователи Logo были в 1968–69 годах в школе Muzzey Jr. High в Лексингтоне, штат Массачусетс . Виртуальные и физические черепахи впервые были использованы пятиклассниками школы Бридж в том же городе в 1970–71 годах.
Черепаха и графика
[ редактировать ]Самая известная особенность логотипа — черепаха (первоначально заимствованная у одноименного робота ). [5] экранный « курсор », который показывает выходные данные команд движения и небольшого выдвижного пера, вместе создающие линейную графику. Традиционно он отображается либо в виде треугольника, либо в виде значка черепахи (хотя он может быть представлен любым значком). Графика черепахи была добавлена в язык логотипа Сеймуром Пейпертом в конце 1960-х годов для поддержки версии робота-черепахи Пейперта, простого робота, управляемого с рабочей станции пользователя, который предназначен для выполнения возложенных на него функций рисования с помощью небольшого набора выдвижных ручек. в корпус робота или прикреплен к нему.
На практике использование геометрии черепахи вместо более традиционной модели имитирует реальную логику движения робота-черепахи. Черепаха движется по командам, которые соответствуют ее собственному положению: ВЛЕВО 90 означает поворот влево на 90 градусов. Некоторые реализации логотипа, особенно те, которые позволяют использовать параллелизм и несколько черепах, поддерживают обнаружение столкновений и позволяют пользователю переопределять внешний вид курсора-черепахи, по сути позволяя черепахам логотипа функционировать как спрайты .
Геометрия черепахи также иногда используется в средах, отличных от Logo, в качестве альтернативы графической системе со строгой координатной адресацией. Например, идея черепашьей графики также полезна в системе Линденмайера для генерации фракталов .
Реализации
[ редактировать ]Некоторые современные производные от логотипа позволяют тысячам черепах самостоятельно передвигаться. Существует две популярные реализации: Массачусетского технологического института и StarLogo NetLogo Северо-Западного университета подключенного обучения Центра (CCL) . Они позволяют исследовать возникающие явления и сопровождают множество экспериментов в социальных исследованиях, биологии, физике и других областях. NetLogo широко используется в агентном моделировании в биологических и социальных науках.
Хотя единого стандарта не существует, существует широкий консенсус по основным аспектам языка. В марте 2020 года было насчитано 308 реализаций и диалектов логотипа, каждый из которых имеет свои сильные стороны. [8] Большинство из этих 308 больше не используются широко, но многие все еще находятся в стадии разработки. Коммерческие реализации, широко используемые в школах, включают MicroWorlds Logo и Imagine Logo .
Устаревшие и текущие реализации включают в себя:
- Впервые выпущен в 1980-х годах.
- Логотип Apple для Apple II Plus и Apple Logo Writer для Apple IIe , разработанные компанией Logo Computer Systems, Inc. (LCSI), были наиболее широко используемыми и распространенными ранними реализациями логотипа, пик которых пришелся на начало-середину 1980-х годов.
- Aquarius LOGO был выпущен в 1982 году на картридже компанией Mattel для домашнего компьютера Aquarius .
- Логотип Atari был выпущен на картридже компанией Atari, Inc. для 8-битных компьютеров Atari .
- Color Logo был выпущен в 1983 году на картридже (26-2722) и диске (26-2721) компанией Tandy для цветного компьютера TRS-80 .
- с подзаголовком «Язык для обучения» Логотип Commodore был выпущен компанией Commodore International . Он был основан на логотипе MIT и усовершенствован компанией Terrapin, Inc. Версия Commodore 64 (C64105) была выпущена на дискете в 1983 году; Версия Plus/4 (T263001) была выпущена на картридже в 1984 году. [9] [10]
- ExperLogo был выпущен в 1985 году на дискете компанией Expertelligence Inc. для Macintosh 128K .
- Hot-Logo был выпущен в середине 1980-х годов компанией EPCOM для 8-битных компьютеров MSX с собственным набором команд на бразильском португальском языке.
- Логотип TI (для компьютера TI-99/4A ) использовался в начальных школах, подчеркивая полезность логотипа при обучении начинающих программистов основам вычислений.
- Sprite Logo, также разработанный компанией Logo Computer Systems Inc., имел десять черепах, которые могли работать как независимые процессы. Он работал на компьютерах Apple II с помощью карты Sprite Card, вставленной в один из слотов компьютера.
- IBM выпустила на рынок свою собственную версию логотипа (номер по каталогу 6024076), разработанную совместно с Logo Computer Systems, Inc. (LCSI), для своего тогда нового IBM PC.
- ObjectLOGO — это вариант Logo с расширениями объектно-ориентированного программирования и лексической областью действия. Версия 2.7 продавалась Digitool, Inc. [11] Он больше не разрабатывается и не поддерживается и не работает в версиях операционной системы Mac старше 7.5. [12]
- Dr. Logo был разработан Digital Research и распространялся на компьютерах, включая IBM PCjr , [13] Atari ST и Amstrad CPC . [14] [15] [16]
- Логотип Acornsoft был выпущен в 1985 году. Это коммерческая реализация логотипа для 8-битных компьютеров BBC Micro и Acorn Electron . [17] Он был разработан для Acorn Computers как полная реализация Logo. Он оснащен несколькими экранами- черепахами и четырехканальным звуком. Он был предоставлен на двух ПЗУ по 16 КБ с утилитами и драйверами в качестве сопутствующего программного обеспечения. [18]
- Впервые выпущен в 1990-х годах.
- В феврале 1990 года Electron User опубликовал простую реализацию Тимоти Грэнтэма логотипа для Acorn Electron в статье «Говорящая черепаха». [19]
- Логотип Comenius — это реализация логотипа, разработанного факультетом математики и физики Университета Comenius . Он начал разрабатываться в декабре 1991 года и также известен в других странах как SuperLogo, MultiLogo и MegaLogo. [20]
- Lego Logo — это версия Logo, которая может манипулировать роботизированными кубиками Lego, прикрепленными к компьютеру. [21] Он был реализован на Apple II и использовался в американских и других начальных школах в конце 1980-х — начале 1990-х годов. [22] Логотип Lego является предшественником Scratch . [23]
- UCBLogo , также известный как Berkeley Logo, представляет собой бесплатную кроссплатформенную реализацию стандартного логотипа, последний раз выпущенного в 2009 году. Джордж Миллс из Массачусетского технологического института использовал UCBLogo в качестве основы для MSWLogo , который является более совершенным и бесплатным. Джим Мюллер написал книгу « Великое приключение с логотипом» , которая представляла собой полное руководство по логотипам и в которой в качестве языка демонстрации использовался MSWLogo. [24] MSWLogo превратился в FMSLogo .
- Впервые выпущен с 2000 года.
- aUCBLogo — это переписанная и улучшенная версия UCBLogo .
- Imagine Logo является преемником логотипа Comenius, реализованного в 2000 году. [25] Английская версия была выпущена компанией Logotron Ltd. в 2001 году. [26]
- LibreLogo — это расширение некоторых версий LibreOffice. Выпущенный в 2012 году, он написан на Python . Он позволяет писать векторную графику в Writer.
- Logo3D — это трехмерная версия Logo.
- POOL — диалект Logo с объектно-ориентированными расширениями, реализованный в 2014 году. Программы POOL компилируются и запускаются в графической IDE на Microsoft Windows . доступна упрощенная кроссплатформенная среда Для систем, поддерживающих .NET Framework, .
- QLogo — это кроссплатформенная переработка UCBLogo с открытым исходным кодом , обеспечивающая почти полную совместимость с UCB и использующую графику с аппаратным ускорением.
- Lynx — это онлайн-версия Logo, разработанная компанией Logo Computer Systems Inc. Она может запускать большое количество черепах, поддерживает анимацию, параллельные процессы, определение цвета и столкновений.
- LogoMor — это онлайн-интерпретатор 3D-логотипов с открытым исходным кодом, основанный на JavaScript и p5.js. Он поддерживает 3D-рисунки, анимацию, мультимедиа, 3D-модели и различные инструменты. Он также включает полнофункциональный редактор кода на основе CodeMirror.
- LbyM — это онлайн-интерпретатор логотипов с открытым исходным кодом, основанный на JavaScript, созданный и активно развиваемый (по состоянию на 2021 год) для штата Сонома . Университета Learning by Making программы [27] Он отличается традиционным программированием логотипов, возможностью подключения к индивидуальному микроконтроллеру и интеграцией с современным редактором кода.
Влияние
[ редактировать ]Логотип оказал основное влияние на язык программирования Smalltalk . Это также основное влияние на среду и язык образовательного программирования Etoys , который по сути представляет собой вариант логотипа, написанный на Squeak (который сам по себе является вариантом Smalltalk). Логотип повлиял на модель процедуры/метода в AgentSheets и AgentCubes, запрограммировав агентов аналогично понятию черепахи в Logo. Логотип стал основным языком для Boxer. Boxer был разработан в Калифорнийском университете в Беркли и Массачусетском технологическом институте и основан на модели грамотности , что упрощает его использование людьми, не имеющими технических знаний. [28]
KTurtle — это вариант логотипа, реализованный в Qt для среды KDE , в общих чертах основанный на логотипе. [29]
Еще двумя результатами влияния Logo являются Kojo , вариант Scala, и Scratch , визуальный язык перетаскивания, который работает в веб-браузере.
Ссылки
[ редактировать ]- ^ Абельсон, Хэл; Гудман, Нэт; Рудольф, Ли (декабрь 1974 г.). «Руководство по логотипам» . Лаборатория искусственного интеллекта Массачусетского технологического института . hdl : 1721.1/6226 . Архивировано из оригинала 11 сентября 2016 года . Проверено 28 августа 2016 г.
- ^ Гольденберг, Э. Пол (август 1982 г.). «Логотип – культурный словарь» . Байт . п. 218 . Проверено 19 октября 2013 г.
- ^ CSLS Том 1, Предисловие .pxvi, Харви, 1997 г.
- ^ Стиль логотипа компьютерных наук , Брайан Харви, MIT Press (3 тома) ISBN 0-262-58148-5 , ISBN 0-262-58149-3 , ISBN 0-262-58150-7 . Доступно онлайн. Архивировано 4 июля 2013 г. на Wayback Machine.
- ^ Jump up to: а б «Фонд логотипа» . el.media.mit.edu . Архивировано из оригинала 21 июля 2011 г. Проверено 7 апреля 2011 г.
- ^ "логогоны" . logothings.wikispaces.com . Архивировано из оригинала 7 декабря 2011 г.
- ^ Пьетрокола, Джорджио (2005). «Тартапелаго» . Маэкла .
- ^ «Проект дерева логотипов» (PDF) . Элика.нет . Архивировано из оригинала (PDF) 6 марта 2009 г. Проверено 25 марта 2020 г.
- ^ Брэйн, Джим; Циммерман, Бо (30 октября 2017 г.). «Канонический список продуктов Commodore» . Архивировано из оригинала 20 декабря 2017 г. Проверено 3 декабря 2017 г.
- ^ «Логотип — сведения о программном обеспечении» . Плюс/4 Мир . Архивировано из оригинала 4 декабря 2017 г. Проверено 3 декабря 2017 г.
- ^ Логотип объекта . Архивировано 30 апреля 2008 г. на странице Wayback Machine на веб-сайте Digitool (по состоянию на 4 марта 2008 г.).
- ^ Страница заказа логотипа объекта на веб-сайте Digitool (по состоянию на 4 марта 2008 г.)
- ^ «DRI поставляет 128-тысячную версию логотипа Dr. Logo» (PDF) . Micro Notes — Техническая информация о продуктах Digital Research . Том. 2, нет. 2. Пасифик Гроув, Калифорния, США: Digital Research, Inc., май 1984 г., с. 4. СЗВ-106-002. Архивировано (PDF) из оригинала 11 февраля 2020 г. Проверено 11 февраля 2020 г.
[…] Dr. Logo впервые появился на розничном рынке осенью 1983 года для IBM PC и поднялся на вершину Hot List Softsel . Розничная версия включала SpeedStart CP/M , сокращенную версию CP/M , которая загружается автоматически при включении системы. […]
[1] - ^ «Поиск по каталогу | Музей компьютерной истории» . www.computerhistory.org .
- ^ «Amstrad CPC 6128 — Компьютер — История вычислений» . www.computinghistory.org.uk .
- ^ "es:manual_del_amstrad_pcw_8256_8512_ingles [PcwWiki]" . www.habisoft.com .
- ^ Филд, Грэм (1985). ЛОГОТИП на компьютере BBC и Acorn Electron . Макмиллан . ISBN 0-333-39566-2 .
- ^ Рэдберн, Дерек. «Четыре логотипа BBC Micro» . Специальный курс по обучению микропользователей . Микропользователь . Проверено 20 февраля 2012 г.
- ^ «Говорящая черепаха» . Февраль 1990. стр. 20–21. Архивировано из оригинала 28 марта 2017 года.
- ^ «История логотипа Comenius» . 09.12.2002. Архивировано из оригинала 9 декабря 2002 г. Проверено 12 октября 2022 г.
- ^ Резник, Митчел (июль 1993 г.). «Наборы для построения поведения» . Коммуникации АКМ . 36 (7): 64–71. дои : 10.1145/159544.159593 . S2CID 9263998 . Проверено 5 января 2022 г.
- ^ «Проект LEGO-LOGO для школ-лабораторий» . Лабораторные школы Чикагского университета . Архивировано из оригинала 20 июля 2011 года.
- ^ Булл, Г.; Гарофало, Дж.; Хгуен, Н. (2020), «Размышления о вычислительном мышлении: истоки вычислительного мышления в образовательных вычислениях», Журнал цифрового обучения в педагогическом образовании , 36 (1): 6–18, doi : 10.1080/21532974.2019.1694381 , S2CID 214563715
- ^ Мюллер, Джим (ноябрь 2001 г.). «MSWLogo, образовательный язык программирования» . Проверено 5 января 2022 г.
- ^ Андрей, Калас; Блахо, Иван (2000). Представьте себе... новое поколение логотипов: программируемые изображения . OCLC 854959806 .
- ^ «Представьте | Пресс-релиз» . 17 апреля 2001 г. Архивировано из оригинала 17 апреля 2001 г. Проверено 12 октября 2022 г.
- ^ «Обучение через создание ¦ Make@SSU» . 14 августа 2017 года . Проверено 8 января 2022 г.
- ^ «Боксер — EduTech Wiki» . edutechwiki.unige.ch . Проверено 10 апреля 2024 г.
- ^ «Образовательный проект KDE — KTurtle» . edu.kde.org . Архивировано из оригинала 27 августа 2006 г.
Дальнейшее чтение
[ редактировать ]- К искусственному интеллекту (1976). Ранний учебник по искусственному интеллекту, в котором широко используется логотип. (Используется диалект Эдинбургского университета , AI2LOGO)
- Геометрия черепахи Абельсон и диСесса
- Детские дизайнеры , Идит Харел Капертон, издательство Ablex Publishing Corporation ISBN 0893917885 . Доступно онлайн
- «Обучение с логотипом» , Дэниел Уотт, МакГроу Хилл, ISBN 0-07-068570-3 . Доступно через Amazon
- Преподавание с логотипом: строительные блоки для обучения, Молли Уотт и Дэниел Уотт, Эддисон Уэсли (ныне Пирсон), 1986 г., ISBN 0-201-08112-1 доступен на Amazon.
- «Логотип» (PDF) . Байт . Том. 7, нет. 8. МакГроу-Хилл. 1982. ( Специальный выпуск журнала Byte за 1982 год, содержащий несколько статей о логотипе).
Внешние ссылки
[ редактировать ]- СМИ, связанные с логотипом (языком программирования) на Викискладе?
- Программирование логотипов в Wikibooks
- 1967 год в робототехнике
- Программное обеспечение Apple II
- Динамически типизированные языки программирования
- Специализированные языки программирования
- Образовательные языки программирования
- Бесплатное образовательное программное обеспечение
- Функциональные языки
- Семейство языков программирования Лисп
- Семейство языков программирования логотипов
- Языки программирования
- Языки программирования, созданные в 1967 году.
- Языки программирования роботов