stringtranslate.com

MDL (язык программирования)

MDL ( язык разработки моделей , [1] или в разговорной речи также называемый More Datatypes than Lisp [2] : 3  или MIT Design Language [ требуется ссылка ] ) — язык программирования , потомок языка Lisp . Его первоначальной целью было обеспечение поддержки языка высокого уровня для группы динамического моделирования в проекте MAC Массачусетского технологического института (MIT) . [3] Он был разработан в 1971 году на PDP-10 под управлением ITS и позже работал на TENEX , TOPS-20 , [4] [5] BSD , [2] : 6  и AEGIS . [6]

Первоначальная команда разработчиков состояла из Джеральда Сассмана и Карла Хьюитта из Лаборатории искусственного интеллекта, а также Криса Рива, Брюса Дэниелса и Дэвида Кресси из Группы динамического моделирования. Позже Стю Гэлли, также из Группы динамического моделирования, написал документацию MDL. [ необходима цитата ]

MDL изначально назывался Muddle . [4] : 2  Этот стиль самоуничижительного юмора не был широко понят или оценен за пределами Project MAC. Поэтому название было смягчено до MDL. [ необходима цитата ]

MDL предоставляет несколько улучшений классического Lisp. Он поддерживает несколько встроенных типов данных, включая списки, строки и массивы, а также определяемые пользователем типы данных. Он предлагает многопоточное вычисление выражений и сопрограммы . Переменные могут нести как локальное значение в пределах области действия, так и глобальное значение для передачи данных между областями действия. Расширенные встроенные функции поддерживают интерактивную отладку программ MDL, инкрементальную разработку и реконструкцию исходных программ из объектных программ.

Хотя MDL устарел, некоторые из его функций были включены в более поздние версии Lisp. Джеральд Сассман продолжил разработку языка Scheme в сотрудничестве с Гаем Стилом , который позже написал спецификации для Common Lisp и Java . Карл Хьюитт уже опубликовал идею языка Planner до начала проекта MDL, но его последующие размышления о Planner отражали уроки, извлеченные из создания MDL. Концепции Planner повлияли на такие языки, как Prolog и Smalltalk . Smalltalk и Simula , в свою очередь, повлияли на будущую работу Хьюитта над моделью акторов .

Но наибольшее влияние MDL оказал на программный жанр интерактивной фантастики (IF). Игра IF под названием Zork , иногда называемая Dungeon, была впервые написана на MDL. [7] Позже Рив, Дэниелс, Гэлли и другие члены Dynamic Modeling основали Infocom , компанию, которая выпустила множество ранних коммерческих произведений интерактивной фантастики.

В 1980 году Марк Бланк и Джоэл Берез адаптировали язык MDL для создания подмножества под названием ZIL ( Zork Implementation Language ), которое широко использовалось компанией Infocom для создания своих отмеченных наградами игр.

Пример кода

Это образец PDP-10 MDL: [8] [9] [10]

<DEFINE EXIT-TO ( EXITS RMS ) # DECL (( EXITS ) EXIT ( RMS ) <UVECTOR [ REST ROOM ] > ) <MAPF <> <FUNCTION ( E ) # DECL (( E ) <ИЛИ НАПРАВЛЕНИЕ ROOM CEXIT NEXIT DOOR> ) <COND ( <TYPE? .E DIRECTION> ) ( <AND <TYPE? .E ROOM> <MEMQ .E .RMS>> <MAPLEAVE T> ) ( <AND <TYPE? .E CEXIT> <MEMQ <2 .E> .RMS>> <MAPLEAVE T> ) ( <AND <TYPE? .E DOOR> <OR <MEMQ <DROOM1 .E> .RMS> <MEMQ <DROOM2 .E> .RMS>>> <MAPLEAVE T> ) >> .ВЫХОДЫ>>                                                             

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

Ссылки

  1. Supnik, Bob (25 октября 2006 г.). "GET LAMP Bob Supnik Interview" (Интервью). Интервью Джейсона Скотта. 15:00.
  2. ^ ab Licklider, JCR (январь 1988 г.). "Графическое программирование и мониторинг RADC-TR-88-7" (PDF) . Rome Air Development Center. Архивировано (PDF) из оригинала 3 мая 2019 г. . Получено 18 мая 2019 г. .
  3. ^ Дорнбрук, Майкл; Бланк, Марк (1980). "MDL Programming Primer MIT-LCS-TR-292" (PDF) . Массачусетский технологический институт, Лаборатория компьютерных наук . Получено 18.05.2019 .
  4. ^ ab Galley, Stu W.; Pfister, Greg (1979). "Язык программирования MDL" (PDF) . Массачусетский технологический институт, Лаборатория компьютерных наук . Получено 18.12.2018 .(Транскрипция Markdown/HTML)
  5. ^ Lebling, P. David (май 1980 г.). "Среда программирования MDL" (PDF) . Массачусетский технологический институт, Лаборатория компьютерных наук . Получено 18 декабря 2018 г.
  6. ^ Лим, По Чуан (1982). «Независимый от устройств графический менеджер для MDL» (PDF) . Массачусетский технологический институт. стр. 69. Получено 18.05.2019 .
  7. ^ Дайер, Ричард (1984-05-06). "Мастера игры". The Boston Globe . Архивировано из оригинала 1997-06-07.
  8. ^ "Zork-mdl.zip".
  9. ^ Supnik, Bob (2018-06-04). "Software Kits". Computer Simulation and History (SimH) . Bitsavers.org . Получено 2018-12-18 .
  10. ^ Supnik, Bob (2007-09-02). "Software Kits". Computer Simulation and History (SimH) . Forum PDP-11 . Получено 2018-12-18 .

Внешние ссылки