Jump to content

НИЛ (язык программирования)

(Перенаправлено из NIL lisp )
ноль
Парадигмы Мультипарадигма : функциональная , процедурная.
Семья Лисп
Разработано Джон Л. Уайт
Разработчики Джон Л. Уайт,
Гай Л. Стил младший ,
Ричард П. Габриэль
Впервые появился 1979 год ; 45 лет назад ( 1979 )
Дисциплина набора текста динамичный , сильный
Язык реализации ВАКС в сборе
Платформа ВАКС
ТЫ ВАКС/ВМС
Под влиянием
Лисп , Маклисп
Под влиянием
Общий Лисп , [1] Т

Новая реализация LISP ( NIL ) — язык программирования , диалект языка Lisp , разработанный в Массачусетском технологическом институте (MIT) в 1970-х годах и призванный стать преемником языка Maclisp . [1] Это 32-битная реализация, [2] и был частично ответом на компании Digital Equipment Corporation (DEC) компьютер VAX . Проект возглавил Джон Л. Уайт, [3] с заявленной целью сохранить совместимость с MacLisp и одновременно устранить многие его проблемы.

Язык Лисп был изобретен в 1958 году Джоном Маккарти , когда он учился в Массачусетском технологическом институте (MIT). [4] С момента своего создания Lisp был тесно связан с искусственного интеллекта (ИИ) исследовательским сообществом , особенно в отношении систем PDP-10 . На 36-битный слова размер PDP-6 и PDP-10 повлияла полезность использования двух 18-битных указателей Лиспа в одном слове: «Проект PDP-6 начался в начале 1963 года как 24-битная машина. Для LISP она выросла до 36 бит, что и было целью разработки». [5] Lisp использовался как реализация языка программирования Micro Planner , который лег в основу знаменитой системы искусственного интеллекта SHRDLU . Лисп, в частности Maclisp (названный так потому, что он возник в рамках проекта MAC MIT), также использовался для реализации Macsyma системы компьютерной алгебры . В 1970-х годах, когда исследования ИИ породили коммерческие ответвления, производительность существующих систем Lisp стала растущей проблемой.

Частично из-за сборки мусора (Лисп будет использовать сборку мусора с остановкой и копированием своей единственной кучи для выделения памяти). [2] ) и отчасти из-за представления внутренних структур, Lisp стало трудно запускать на стандартном компьютерном оборудовании того времени с ограниченной памятью. Это привело к созданию машин Lisp : специализированного оборудования для запуска сред и программ Lisp. Альтернативой было использование более мощного стандартного аппаратного обеспечения, которое становилось доступным, особенно компании Digital Equipment Corporation (DEC) VAX .

NIL представлял собой реализацию Lisp , разработанную в Массачусетском технологическом институте в середине-конце 1970-х годов и призванную стать современным преемником Maclisp , способным работать на стандартном оборудовании. [1] в отличие от Lisp Machine Lisp для машин Lisp. [2] «Первоначально разработанный как первый современный диалект Лиспа на стандартном оборудовании после разработки Лисп-машины Лисп в Массачусетском технологическом институте, он впоследствии оказал одно из главных влияний на дизайн Common Lisp». (стр. 63/294 из [2] ) Поскольку пользователи программы Macsyma представляли собой большую потенциальную базу пользователей NIL, было необходимо, чтобы NIL была большой и сложной системой, и эта скорость была бы императивом. высокоскоростных бигнумов , поскольку при использовании медленных бигнумов NIL было бы ошибкой. Например, для поддержки Macsyma требовалось наличие [6] В результате у NIL появилась большая база ассемблерного языка VAX . Эти требования привели к очень агрессивной и сложной стратегии оптимизации, которая была применена преждевременно и привела к отрицательным результатам в конечной системе. [7]

Одновременно с написанием NIL исследовательская группа Стэнфордского университета и Ливерморской национальной лаборатории Лоуренса под руководством Ричарда П. Габриэля изучала конструкцию Lisp для работы на суперкомпьютере S-1 Mark IIA , S-1 Lisp . Этот Лисп никогда не был полностью функциональным, но был испытательной площадкой для реализации передовых методов компиляции в Лиспе. В конце концов группы S-1 и NIL начали сотрудничать.

Несмотря на то, что NIL не смог достичь своих целей в качестве используемого языка, он был важен по нескольким причинам. Во-первых, он объединил Джона Л. Уайта, Гая Л. Стила-младшего и Ричарда П. Габриэля, которые позже определили Common Lisp . [1] Во-вторых, Джонатан Рис работал над частью проекта NIL в течение года вне Йельского университета . По возвращении в Йельский университет он был нанят факультетом информатики для написания нового Lisp, который стал оптимизирующей Scheme системой T. собственного кода под названием Частично это имя породило NIL, поскольку «T не есть NIL». [7]

1958 1960 1965 1970 1975 1980 1985 1990 1995 2000 2005 2010 2015 2020
ЛИСП 1, 1.5, ЛИСП 2 (заброшенный)
 Маклисп
 Интерлисп
 леев
 Лисп-машина Лисп
 Схема Р5РС Р6РС R7RS маленький
 НОЛЬ
 ЗИЛ (язык реализации Zork)
 Франц Лисп
 Общий Лисп стандарт ANSI
 Лисп
 Схема СО
 XLISP
 Т
 На схеме
 Эмакс Лисп
 АвтоЛИСП
 ПикоЛисп
 Гамбит
 EuLisp
 ИСЛИСП
 ОпенЛисп
 Схема PLT  Ракетка
 новыйЛИСП
 GNU Коварство
 Визуальный ЛИСП
 Клоджур
 Дуга
 ЛФЭ
 Он
 Хиалисп

Зарождение и окончательный провал такого рода проектов всегда ясно видны (задним числом) в лозунгах ранних дискуссий. Одна из ключевых фраз-подсказок всегда звучит примерно так: «Мы выбросим весь старый хлам , начнем все сначала и просто будем делать все правильно».

Олин Шиверс [7]
  1. ^ Jump up to: а б с д Стил, Гай Л. младший; Габриэль, Ричард П. «Эволюция Лиспа» (PDF) . Проверено 5 августа 2017 г.
  2. ^ Jump up to: а б с д Габриэль, Ричард П. (май 1985 г.). Производительность и оценка систем Lisp (PDF) . Массачусетский технологический институт Пресс ; Серия «Компьютерные системы». ISBN  978-0-262-07093-5 . LCCN   85015161 .
  3. ^ Питман, Кент М. «Краткая история языка Лисп» . Архивировано из оригинала 10 октября 2006 г. Проверено 12 октября 2006 г.
  4. ^ МакДжонс, Пол. «История ЛИСПа» . Проверено 12 октября 2006 г.
  5. ^ Херли, Питер Дж. Стивенс, Джек; Джонсон, Лам (ред.). «История ТОПС или жизнь в быстрых АС» . Группы Google . Проверено 28 ноября 2018 г.
  6. ^ Вайнреб, Дэн. «Дэн Вайнреб на НУЛЕ» . ПолГрэм.com . Проверено 28 ноября 2018 г.
  7. ^ Jump up to: а б с Дрожь, Олин. «Олин Шиверс: История Т» . ПолГрэм.com . Проверено 28 ноября 2018 г.

Библиография

[ редактировать ]
  • Брент Т. Хейлперн, Брюс Л. Хитсон. S-1 Руководство по архитектуре. Технический отчет 161 (STAN-CS-79-715), факультет электротехники, Стэнфордский университет, январь 1979 г.
  • Г. Берк. Знакомство с НИЛ. Лаборатория компьютерных наук Массачусетского технологического института, март 1983 г.
  • Г.С. Берк, Г.Дж. Карретт, С.Р. Элиот. Примечания NIL к выпуску 0.259, Лаборатория компьютерных наук Массачусетского технологического института, июнь 1983 г.
  • Г.С. Берк, Г.Дж. Карретт, С.Р. Элиот. Справочное руководство НИЛ. Отчет MIT/LCS/TR-311, Лаборатория компьютерных наук, Массачусетский технологический институт, Кембридж, Массачусетс, 1983.
  • Стивен Коррелл. Однопроцессорная архитектура S-1 (sma-4). Том I, глава 4, Годовой отчет проекта S-1 за 1979 год, Ливерморская лаборатория Лоуренса, Ливермор, Калифорния, 1979 год.
  • Джон Л. Уайт. Нил: Перспектива. Материалы конференции пользователей Macsyma 1979 г., Вашингтон, округ Колумбия, июнь 1979 г.
  • Родни А. Брукс, Ричард П. Габриэль, Гай Л. Стил-младший. Реализация S-1 Common Lisp. Материалы симпозиума ACM 1982 г. по LISP и функциональному программированию, Питтсбург, 1982 г., страницы 108–113. ACM DL.
  • Родни А. Брукс, Ричард П. Габриэль, Гай Л. Стил-младший. Оптимизирующий компилятор для LISP с лексической областью действия. Материалы симпозиума 1982 г. по созданию компиляторов, Бостон, июнь 1982 г., страницы 261–275. АСМ ДЛ
  • Марк Смотерман. Суперкомпьютер С-1 (1975–1988). Веб-сайт, последнее обновление 24 апреля 2004 г. http://www.cs.clemson.edu/~mark/s1.html.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: f0d36466a433e1a43a155787f9196d65__1692002400
URL1:https://arc.ask3.ru/arc/aa/f0/65/f0d36466a433e1a43a155787f9196d65.html
Заголовок, (Title) документа по адресу, URL1:
NIL (programming language) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)