Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Образовательный язык программирования является языком программирования , который предназначен в основном как инструмент для обучения , а не как инструмент для написания программ для выполнения работ.

Типы учебных языков программирования [ править ]

Языки ассемблера [ править ]

Первоначально машинный код был первым и единственным способом программирования компьютеров. Ассемблер был следующим типом используемого языка и, таким образом, является одним из старейших семейств компьютерных языков, используемых сегодня. Доступно множество диалектов и реализаций, обычно некоторые для каждой архитектуры процессора компьютера. Это очень простой язык, который называется языком программирования низкого уровня . Это один из самых сложных языков для работы, поскольку он не типизирован и является жестким, но именно так компьютеры работают на низком уровне. Для образования существует несколько упрощенных диалектов.

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

  • Little Man Computer (LMC) - учебная модель простой архитектуры фон Неймана.компьютер со всеми основными функциями современных компьютеров. Его можно запрограммировать в машинном коде (обычно десятичном) или на ассемблере. В его основе лежит идея запереть маленького человечка в маленькой комнате. В одном конце комнаты 100 почтовых ящиков в качестве памяти; каждый может содержать трехзначную инструкцию или данные. В другом конце комнаты находятся два почтовых ящика с метками INBOX и OUTBOX, которые принимают и отправляют данные. В центре комнаты находится рабочая зона с простым калькулятором с двумя функциями (сложение и вычитание), называемым «Аккумулятор», и сбрасываемым счетчиком, называемым «Программный счетчик». Счетчик похож на то, что швейцар использует для подсчета количества людей, вошедших в помещение; он может считать до 1 или может быть сброшен до 0. В соответствии с архитектурой фон Неймана, в памяти хранятся как инструкции, так и данные. Пользователь загружает данные в почтовые ящики, а затем сигнализирует человечку о начале выполнения.
  • Next Byte Codes (NBC) - это простой язык с синтаксисом ассемблера, который используется для программированияпрограммируемых блоков Lego Mindstorms NXT . Компилятор командной строки генерирует NXT-совместимый машинный код и поддерживает Windows, Mac OS X и Linux.
  • Little Computer 3 (LC-3) - это язык ассемблера с упрощенным набором инструкций, но он может использоваться для написания умеренно сложных программ на ассемблере и является теоретически жизнеспособной целью для компиляторов C. Он проще, чем сборка x86, но имеет много функций, аналогичных функциям более сложных языков. Эти функции делают его полезным для обучения основам программирования и компьютерной архитектуры для начинающих студентов, изучающих информатику и компьютерную инженерию, что является его наиболее распространенным использованием.
  • DLX - этоархитектура процессора компьютера с сокращенным набором команд (RISC), созданная основными разработчиками MIPS и Berkeley RISC , двух эталонных примеров дизайна RISC. DLX - это, по сути, очищенный, упрощенный MIPS с простой 32-битной архитектурой загрузки / сохранения. Он широко используется в колледжа -LEVEL компьютерной архитектуры курсы.
  • MIX и MMIX - это гипотетические компьютеры, использованные вмонографии Дональда Кнута « Искусство компьютерного программирования» ( TAOCP ). Перефразируя Кнута: Системы MIX - это компьютеры, предназначенные для иллюстрации аспектов программирования на машинном уровне, поэтому их машинный язык прост, элегантен и легок в изучении. Он также включает в себя все сложности, необходимые для обеспечения высокой производительности на практике, поэтому в принципе его можно построить и, возможно, составить конкуренцию некоторым быстрым компьютерам общего назначения. MIX является гибридным, программируемым в двоичном и десятичном виде.числа; большинство программ, написанных для него, будут работать в любой форме. Программные реализации для MIX и MMIX были разработаны Knuth и сделаны в свободном доступе. Существует несколько версий обоих эмуляторов. MIX - это компьютер в стиле 1960-х годов. Его заменяет MMIX, более новая современная компьютерная архитектура, 64-битная архитектура набора команд RISC (ISA). Для MMIX Кнут сотрудничал с архитекторами MIPS и Alpha ISA.

BASIC варианты [ править ]

BASIC (что означает универсальный символический код для начинающих) был изобретен в 1964 году для обеспечения доступа к компьютеру для студентов, не изучающих естественные науки. Он стал популярным на мини-компьютерах в 1960-х годах и стал стандартным вычислительным языком для микрокомпьютеров в конце 1970-х - начале 1980-х годов. Цели BASIC были сосредоточены на необходимости научиться легко программировать: быть простым в использовании для новичков, быть интерактивным, предоставлять четкие и понятные сообщения об ошибках, быстро реагировать, не требовать понимания компьютерного оборудования или операционных систем. Что сделало BASIC особенно полезным для образования, так это небольшой размер программ. Полезные программы, иллюстрирующие концепцию, можно написать дюжиной строк. В то же время BASIC не требовал математических или компьютерных знаний.[1] BASIC и по сей день часто является самоучкой с отличными учебными пособиями и реализациями. См. Список основных диалектов по платформам для получения полного списка. BASIC предлагает путь обучения от ориентированных на обучение BASIC, таких как Microsoft Small Basic , BASIC-256 и SiMPLE , до более полнофункциональных BASIC, таких как Visual Basic .NET и Gambas .

  • Microsoft Small Basic - это ограниченная версия Visual Basic, разработанная как первый язык, «направленная на то, чтобы вернуть« веселье »в программирование». Язык явно довольно маленький, всего с 15 интуитивно понятными ключевыми словами. Включая объектно-ориентированные библиотеки для вещей, представляющих общий интерес для детей, дети могут создавать развлекательные интерактивные программы в сети или на рабочем столе. Например, с помощью 6 строк кода можно продемонстрировать случайную программу просмотра сетевых изображений, используя Flickr в качестве источника. [2] В системе используетсясреда разработки Microsoft Visual Studio IDE для автозаполнения и контекстно-зависимой помощи .
  • Basic-256 - это простая в использовании версия BASIC, предназначенная для обучения основам компьютерного программирования. Он использует традиционные структуры управления BASIC ( gosub , for loops , goto ) для облегчения понимания управления потоком программы. Он имеет встроенный графический режим, который позволяет детям рисовать картинки на экране через несколько минут. Он включает в себя учебники, которые знакомят с концепциями программирования с помощью забавных упражнений.
  • SiMPLE - это система разработки программ, которая была создана, чтобы предоставить простые навыки программирования для всех, особенно для непрофессионалов. Это что-то вроде AppleSoft BASIC . Он скомпилирован и позволяет пользователям создавать свои собственные библиотеки часто используемых функций. «Простой» - это общий термин для трех немного разных версий языка: Micro-SiMPLE для использования только 4 ключевых слов, Pro-SiMPLE и Ultra-SiMPLE для использования 23 ключевых слов.
  • Hot Soup Processor - это производный от BASIC язык, используемый в японских школах.
  • TI-BASIC - это простой язык, похожий на BASIC, реализованный в графических калькуляторах Texas Instruments, который часто используется студентами как первый взгляд на программирование.
  • SmallBASIC - быстрый и простой в освоении интерпретатор языка BASIC, идеально подходящий для повседневных вычислений, создания сценариев и прототипов. Он включает тригонометрические, матричные и алгебраические функции, встроенную среду IDE, мощную библиотеку строк, системные, звуковые и графические команды, а также синтаксис структурированного программирования.

На основе C [ править ]

  • Ch - это интерпретатор C / C ++, разработанный для того, чтобы помочь студентам, не владеющим CS, изучать математику, вычисления и программирование на C и C ++. Он расширяет C функциями численного, 2D / 3D графического построения и написания сценариев.

На основе Java [ править ]

  • NetLogo , написанный на Java и Scala, представляет собой среду разработки для создания и изучения научных моделей, в частности моделей на основе агентов. Он широко используется как в научных исследованиях (научные статьи с использованием NetLogo), так и в образовательных целях, включая начальные и средние школы, университеты и музеи.

На основе Lisp [ править ]

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

Название LISP происходит от «языка обработки списков». Связанные списки - одна из основных структур данных языков , а исходный код Lisp состоит из списков. Таким образом, программы на Лиспе могут манипулировать исходным кодом как структурой данных, создавая макросистемы , которые позволяют программистам создавать новый синтаксис или даже новые предметно-ориентированные языки, встроенные в Лисп. Итак, Lisps полезны для изучения языкового дизайна и создания пользовательских языков.

Разумным путем обучения будет логотип, за которым следует любой образовательный вариант, такой как Scheme или newLISP, за которым следует профессиональный вариант, такой как Common LISP.

  • Logo - это язык, который был специально разработан, чтобы познакомить детей с программированием. Первая часть изучения логотипа посвящена «графике черепах» (полученной от роботов-черепах ), которая использовалась еще в 1969 году с прото-логотипом. В современных реализациях используется устройство абстрактного рисования, называемое черепахой , чтобы сделать программирование для детей очень привлекательным, сосредоточив внимание нарисовании черепахи . Сеймур Паперт , один из создателей логотипа, был крупным мыслителем конструктивизма , разновидности конструктивистской теории обучения . Паперт утверждал, что такие занятия, как письмо, естественно, будут изучаться детьми гораздо младшего возраста, если они усвоят компьютерную культуру.[3] Таким образом, логотип был разработан не только для обучения программированию и компьютерным концепциям, но и для улучшения общего благополучия ребенка в культуре, в которой все больше доминируют технологии, «что более важно, чем раннее начало интеллектуального строительства, - избавить от длительный период зависимости , в течение которого человек учится думать обучения , как то , что должно быть выпуклые на более мощном другой ... Такие дети не определяют себя или позволить обществу определить их как интеллектуально беспомощным. " [3] Он имеет использовался для детей в возрасте от 3 лет и имеет 30-летний опыт успешной работы в сфере образования. Поскольку Logo на самом деле является упрощенной версией Lispс более продвинутыми студентами его можно использовать для ознакомления с основными концепциями информатики и даже искусственного интеллекта. Логотип широко доступен практически на каждой платформе, как в бесплатной, так и в коммерческой версиях.

На основе Scala [ править ]

  • Kojo - это интерактивная настольная среда разработки, разработанная в основном для образовательных целей и работающая в Windows, Linux и OS X. Это обучающая среда с множеством различных функций, которые помогают исследовать, изучать и преподавать концепции в областях компьютерное программирование и критическое мышление, математика и естественные науки, искусство, музыка и творческое мышление, компьютерная и интернет-грамотность. [4]

На основе Smalltalk [ править ]

В рамках проекта « Один ноутбук на ребенка » была разработана последовательность языков на основе Smalltalk, каждый из которых предназначен для введения в следующий. Структура такова: Scratch to Etoys to Squeak to any Smalltalk . [5] Каждый из них предоставляет графические среды, которые можно использовать для обучения детей не только концепциям программирования, но и имитации физики и математики, упражнениям по рассказыванию историй и т. Д. С помощью конструктивного обучения . Smalltalk и Squeak - это полнофункциональные языки разработки приложений, которые существуют и пользуются большим уважением на протяжении десятилетий; Скретч - это детский инструмент обучения.

  • Scratch - это визуальный язык, основанный на Squeak и реализованный на нем. Его цель - обучить детей концепциям программирования и позволить им создавать игры, видео и музыку. В Scratch все интерактивные объекты, графику и звуки можно легко импортировать в новую программу и комбинировать по-новому. Таким образом, новички могут получить быстрые результаты и будут мотивированы на дальнейшие попытки. Сообщество Scratch разработало и загрузило более 3 000 000 проектов. [6] Он разработан группой «Детский сад на протяжении всей жизни» в MIT Media Lab .
  • Etoys основан на идее программируемых виртуальных сущностей, ведущих себя на экране компьютера. Etoys предоставляет мультимедийную среду разработки с простой и мощной объектной моделью на основе сценариев для многих видов объектов, созданных конечными пользователями. Он включает в себя двухмерную и трехмерную графику , изображения , текст , частицы, презентации, веб-страницы, видео , звук и MIDI , возможность делиться рабочими столами с другими пользователями Etoy в режиме реального времени , поэтомуможно выполнятьмножество форм иммерсивного наставничества и игры. через Интернет . Это многоязычный, и успешно использовался в США , Европе , Южной Америке , Японии , Корее , Индии , Непале и других странах. Программа рассчитана на детей 9-12 лет. [7]
  • Squeak - это современная полнофункциональная реализация языка и среды Smalltalk с открытым исходным кодом. Smalltalk - это объектно-ориентированный , динамически типизированный , рефлексивный язык, созданный для поддержки «нового мира» вычислений, примером которого является «симбиоз человека и компьютера». [8] Как и Лисп , он имеет постоянство на основе изображений , поэтому все можно изменять изнутри самого языка (см. Smalltalk # Reflection ). [9] Это сильно повлияло на отрасль, представив многие концепции объектно-ориентированного программирования и своевременной компиляции.. Squeak - это средство для широкого спектра проектов, включая мультимедийные приложения, образовательные платформы и разработку коммерческих веб-приложений . Squeak разработан для обеспечения высокой переносимости и простоты отладки, анализа и изменения, поскольку его виртуальная машина полностью написана на Smalltalk.

Паскаль [ править ]

  • Паскаль - самый известный язык, который был разработан с учетом образовательных целей. [ необходима цитата ] С конца 1970-х до конца 1980-х это был основной выбор на вводных курсах информатики для обучения студентов программированию как в США, так и в Европе. Его использование в реальных приложениях с тех пор увеличилось, и с тех пор его использование как чисто образовательный язык стало несколько спорным. [ согласно кому? ]

Другое [ править ]

  • CircuitPython - это ориентированная на новичков версия Python для интерактивной электроники и образования.
  • Rapira - это АЛГОЛ- подобный процедурный язык программирования с простой интерактивной средой разработки, разработанный в Советском Союзе для обучения программированию в школах.
  • Src: Card - это тактильный автономный язык программирования, встроенный в образовательную карточную игру .

Дети [ править ]

  • AgentSheets и AgentCubes - два инструмента вычислительного мышления для создания 2D / 3D игр и моделирования. Разработка осуществляется с помощью настольных приложений или приложений на основе браузера и позволяет создавать 2D / 3D-игры, в которые можно играть в браузерах, совместимых с HTML5, включая мобильные.
  • Алиса - это бесплатное программное обеспечение, предназначенное для обучения детей объектно-ориентированному программированию, основанному на событиях. Программисты создают интерактивные истории, используя современный интерфейс IDE со стилем программирования перетаскивания. Целевая аудитория - поступающие в колледж первокурсники, хотя большинству детей с опытом работы на компьютере это будет интересно и познавательно. Story Telling Alice - это вариант Алисы, разработанный для детей младшего возраста, с еще более сильным уклоном в рассказывание историй. [10]
  • Blockly - это графический веб-язык с открытым исходным кодом, на котором пользователи могут перетаскивать блоки вместе для создания приложения; печатать не нужно. Он разработан Google . Более подробная информация доступна на домашней странице проекта. [11]
  • CiMPLE - это визуальный язык программирования роботизированного набора для детей. Он построен на C как DSL. ThinkLabs, стартап из Индии, основанный на образовании в области робототехники, построил его для набора iPitara Robotic. Язык очень похож на язык Си. Приблизительно 5000+ студентов в Индии купили комплект iPitara и запрограммировали его с помощью CiMPLE. Дополнительную информацию можно найти в блоге разработчиков оригинального ПО CiMPLE [12] и в ThinkLabs. [13]
  • Physical Etoys - это бесплатное расширение Etoys с открытым исходным кодом. Его философия - «помочь детям моделировать и программировать реальный мир, чтобы узнать о нем больше». Он может работать в Windows, Linux и Sugar. Physical Etoys позволяет легко программировать различные электронные устройства, такие как Lego NXT, платы Arduino, Sphero, Kinect, джойстик Wiimote и другие, и взаимодействовать между собой благодаря системе блочных сценариев. Идеально подходит для образовательных программ.
  • Hackety Hack - это бесплатнаясреда на основе Ruby, цель которой - облегчить обучение программированию для новичков, особенно для подростков.
  • Karel , Karel ++ и Karel J. Robot - это языки, предназначенные для абсолютных новичков, используемые для управления простым роботом в городе, состоящем из прямоугольной сетки улиц. В то время как Karel - это отдельный язык, Karel ++ - это версия Karel, реализованная на C ++ , а Karel J. Robot - это версия Karel, реализованная на Java .
  • Kodu- это простой язык, полностью основанный на пиктограммах. Он был создан Microsoft Research как проект, призванный помочь детям младшего возраста, особенно девочкам, получить удовольствие от технологий. Программы состоят из страниц, которые разделены на правила, которые в дальнейшем делятся на условия и действия. Условия оцениваются одновременно. Язык Kodu разработан специально для разработки игр и предоставляет специализированные примитивы, полученные из игровых сценариев. Программы выражаются в физических терминах с использованием таких понятий, как зрение, слух и время для управления поведением персонажа. Хотя Kodu не так универсален, как классические языки программирования, он может выражать передовые концепции игрового дизайна простым, прямым и интуитивно понятным образом. Инструмент Kodu доступен в трех формах: ПК для бесплатной загрузки в виде общедоступной бета-версии и академической формы,и в виде недорогой загрузки для Xbox 360 Live.
  • Logo - это образовательный язык для детей, разработанный в 1967 году Дэниелом Г. Боброу , Уолли Ферзейгом , Сеймуром Папертом и Синтией Соломон . Сегодня этот язык запомнился в основном за использование « черепашьей графики », в которой команды для движения и рисования производили линейную графику либо на экране, либо с помощью небольшого робота, называемого « черепаха ». Изначально язык был задуман для обучения концепциям программирования, связанным с Лиспом, и только позже для того, чтобы сделать возможным то, что Паперт назвал « телесно-синтонным рассуждением».где студенты могли понять (и предсказать и рассудить) движение черепахи, представив, что бы они сделали, если бы они были черепахой.
  • Lego Mindstorms - это линейка наборов Lego, в которых программируемые кубики сочетаются с электродвигателями, датчиками, кубиками Lego и элементами Lego Technic (такими как шестерни, оси и балки). Mindstorms произошли от программируемых сенсорных блоков, используемых в линейке обучающих игрушек. Первая розничная версия Lego Mindstorms была выпущена в 1998 году и продавалась на коммерческой основе как Robotics Invention System (RIS). Текущая версия была выпущена в 2006 году как Lego Mindstorms NXT. Дляинтеллектуальных атак используется широкий спектр языков программирования, от Logo до BASIC и производных от Java, Smalltalk и C. Подход Mindstorm к программированию теперь имеет специальные физические сайты, называемые Computer Clubhouses .
  • Mama - это образовательный объектно-ориентированный язык, разработанный, чтобы помочь молодым ученикам начать программировать, предоставляя все языковые элементы на родном языке ученика. Язык Mama доступен на нескольких языках, с поддержкой как LTR, так и RTL. Новый вариант мамы был построенвершине Карнеги - Меллон «s Alice среды разработки, поддержки сценариев объектов 3D сцены. Этот новый вариант Mama был разработан, чтобы помочь молодым студентам начать программировать, создавая 3D-анимацию и игры. В документе о принципах образовательного программирования объясняются соображения мамы по дизайну. [14]
  • RoboMind - это простая образовательная среда программирования, которая позволяет новичкам программировать роботов. Он знакомит с популярными методами программирования, а также с некоторыми роботами и искусственным интеллектом. Робота можно запрограммировать на арабском, китайском, голландском, немецком, английском и шведском языках.
  • Scratch - это графический язык на основе блоков для создания анимированных историй и игр.
  • Щелчок! является свободным открытым исходным кодом блоковоснове графического языка реализован в JavaScript и первоначально полученный MIT «s нуля . Щелчок! добавляет возможность создавать новые блоки и имеет первоклассные функции, которые позволяют использовать анонимные функции . Его активно поддерживает Калифорнийский университет в Беркли . Источник полностью размещен на GitHub .
  • Stagecast Creator - это система визуального программирования, основанная на демонстрационном программировании . Пользователи демонстрируют системе, что делать, перемещая значки на экране, и она генерирует правила для объектов (персонажей). Пользователи могут создавать двухмерные симуляции, моделирующие концепцию, многоуровневые игры, интерактивные истории и т. Д.
  • Stencyl - это среда разработки для визуального программирования и разработки игр, которая использовалась для образования и коммерции. Концепция использует из кодовых блоков основана на MIT «s Царапины визуального языка (перечислено выше). Он также позволяет использовать обычный типизированный код (отдельный или смешанный) через собственный API иязык Haxe .
  • ToonTalk - это язык и среда, похожая на видеоигру. Вычислительные абстракции отображаются на конкретные аналоги, такие как роботы, дома, грузовики, птицы, гнезда и ящики. Он поддерживает большие целые и точные рациональные числа. Он основан на параллельном программировании ограничений .

Университет [ править ]

  • Curry - это обучающий язык [15], предназначенный для объединения наиболее важных парадигм декларативного программирования, а именно функционального программирования (вложенные выражения, функции высшего порядка, ленивое вычисление) и логического программирования (логические переменные, частичные структуры данных, встроенный поиск). Он также объединяет два наиболее важных принципа работы, разработанных в области языков интегрированной функциональной логики: «остаточный» и «сужающий». [16] [17]
  • Flowgorithm - это графический инструмент разработки для написания и выполнения программ с помощью блок-схем . Подход разработан, чтобы подчеркнуть алгоритм, а не синтаксис данного языка. Блок-схему можно преобразовать на несколько основных языков, таких как C # , Java , Visual Basic .NET и Python . [18]
  • M2001 - это модульный математический язык для разработки и представления математических алгоритмов, от современной дискретной до классической непрерывной математики. Он построен на семантической структуре, основанной на теории категорий, с синтаксисом, аналогичным синтаксису Pascal или Modula-2 . Он предназначен только для обучения, поэтому эффективность и простота реализации гораздо менее важны при его разработке, чем универсальность и диапазон применения. Он был создан, чтобы сыграть важную роль в формировании формальной алгоритмической основы для студентов-математиков первого курса колледжа.
  • Оз - это язык, предназначенный для преподавания теории компьютера. Он поддерживает большинство основных парадигм [19] на одном языке, так что студенты могут изучать парадигмы без необходимости изучать несколько синтаксисов . Оз содержит в простой и хорошо продуманной форме большинство концепций основных парадигм программирования, включая логическое, функциональное (как ленивое, так и нетерпеливое), императивное, объектно-ориентированное, ограниченное, распределенное и параллельное программирование. В нем есть канонический учебник « Концепции, методы и модели компьютерного программирования» и свободно доступная стандартная реализация «Система программирования Моцарта».

См. Также [ править ]

  • Категория: Сравнение языков программирования
  • Sugar - графический интерфейс, разработанный для конструктивного обучения
  • Дизайн по номерам
  • Обработка - язык, посвященный произведениям искусства

Ссылки [ править ]

  1. Брин, Дэвид (14 сентября 2006 г.). «Почему Джонни не умеет писать код» . Салон . Проверено 3 ноября 2019 года .
  2. ^ Microsoft Corporation 2009 Руководство по началу работы для Small Basic , стр. 64.
  3. ^ a b Паперт, Сеймур (октябрь 1980 г.). Новое определение детства: компьютерное присутствие как эксперимент в психологии развития . Токио, Япония и Мельбурн, Австралия: 8-й Всемирный компьютерный конгресс: Конгресс IFIP.
  4. ^ "О когикс Коджо" . Проверено 12 февраля 2011 года .
  5. Кавалло, Дэвид (28 мая 2007 г.). «Изучение писка с нуля» . Один ноутбук на ребенка Новости . Проверено 3 апреля 2009 года .
  6. ^ Митчел Резник; Джон Мэлони; Натали Раск; Эвелин Истмонд; Амон Миллнер; Джей Сильвер; Эрик Розенбаум; Карен Бреннан; Амос Блэнтон. «Царапина: представь, запрограммируй, поделись» . Массачусетский технологический институт . Проверено 8 января 2013 года .
  7. Перейти ↑ Ducasse, Stéphane (2005). Squeak: изучайте программирование с помощью роботов (технологии в действии) . Апресс. стр. 289 в главе 24: Тур или eTOY . ISBN 1-59059-491-6. CS1 maint: обескураженный параметр ( ссылка )
  8. ^ Кей, Алан. «Ранняя история Smalltalk» . Архивировано из оригинального 29 апреля 2011 года . Проверено 13 сентября 2007 года .
  9. ^ Для дальнейшего обсуждения того, почему это упрощает, см. Мета-циркулярный оценщик.
  10. История Алисы
  11. ^ Блочно
  12. ^ CiMPLE Оригинал Разработчики Weblog архивации 21 июля 2011, в Wayback Machine
  13. ^ ThinkLabs
  14. ^ Мама принципы образовательного программирования
  15. ^ М. Ханус. Обучение функциональному и логическому программированию с помощью единой вычислительной модели. В Proc. Девятый международный симпозиум по языкам программирования, реализациям, логике и программам (PLILP'97), стр. 335–350. Springer LNCS 1292, 1997 г.
  16. ^ Отчет Карри, Введение. Самая последняя версия доступна в архиве 4 октября 2009 г. на Wayback Machine.
  17. ^ М. Ханус. Интеграция функций в логическое программирование: от теории к практике. Журнал логического программирования , Vol. 19 и 20, стр. 583–628, 1994.
  18. ^ "О" . Алгоритм потока . Проверено 26 августа 2014 года .
  19. ^ Плакат " Парадигмы программирования"

Внешние ссылки [ править ]

  • Образовательные языки программирования в Curlie