Jump to content

Надежда (язык программирования)

Hope — небольшой функциональный язык программирования, разработанный в 1970-х годах в Эдинбургском университете . [1] [2] Он предшествует Miranda и Haskell и является современником ML , также разработанного в университете. Надежда родилась из НПЛ , [3] простой функциональный язык, разработанный Родом Берстоллом и Джоном Дарлингтоном в их работе по преобразованию программ. [4] NPL и Hope известны тем, что являются первыми языками с оценкой по шаблону и алгебраическими типами данных . [5]

Хоуп был назван в честь сэра Томаса Хоупа (ок. 1681–1771), шотландского реформатора сельского хозяйства, в честь которого также была названа площадь Хоуп-Парк в Эдинбурге, где во время разработки Хоупа располагался Департамент искусственного интеллекта.

Подробности о языке [ править ]

Факториальная программа в Hope:

dec fact : num -> num;
--- fact 0 <= 1;
--- fact n <= n*fact(n-1);

Изменение порядка предложений не меняет смысла программы, поскольку сопоставление с образцом Хоупа всегда отдает предпочтение более конкретным шаблонам, а не менее конкретным. Явные объявления типов в Hope необходимы; в Hope нет возможности использовать алгоритм вывода типа.

Hope предоставляет две встроенные структуры данных: кортежи и списки. [6]

Реализации [ править ]

Первая реализация Hope была строгой , но с тех пор появились ленивые версии и строгие версии с ленивыми конструкторами. приступила British Telecom совместно с Имперским колледжем к реализации строгой версии. Первый выпуск был написан Таносом Василакисом в 1986 году. Дальнейшие выпуски были написаны Марком Таснгом из British Telecom. Язык-преемник Hope+ (разработанный совместно Imperial College и International Computers Limited (ICL)) добавил аннотации, определяющие либо строгую, либо ленивую оценку. [7]

Учебное пособие Роджера Бэйли «Надежда» в августовском выпуске журнала BYTE за 1985 год ссылается на интерпретатор для IBM PC DOS 2.0. [6]

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

  1. ^ Burstall RM , MacQueen DB, Sannella DT (1980) Hope: экспериментальный аппликативный язык . Протокол конференции LISP 1980 года, Стэнфордский университет, стр. 136–143.
  2. ^ Бейли, Роджер (1 апреля 1990 г.). Функциональное программирование с надеждой . Серия Эллиса Хорвуда «Компьютеры и их приложения». Эллис Хорвуд Лтд.
  3. ^ РМ Берстолл. Соображения по проектированию функционального языка программирования. Приглашенный доклад, Учеб. Конференция по новейшим технологиям Infotech. «Революция программного обеспечения», Копенгаген, 45–57 (1977).
  4. ^ RM Берстолл и Дж. Дарлингтон. Система преобразований для разработки рекурсивных программ. Журнал Ассоциации вычислительной техники, 24 (1): 44–67 (1977).
  5. ^ Худак, Пол; Хьюз, Джон; Пейтон Джонс, Саймон; Уодлер, Филип (9 июня 2007 г.). История Haskell: лень с классами . АКМ. стр. 12–1. дои : 10.1145/1238844.1238856 . ISBN  9781595937667 . S2CID   52847907 .
  6. ^ Jump up to: Перейти обратно: а б Бейли, Роджер (август 1985 г.). «Урок надежды» . БАЙТ . Том. 10, нет. 8 . Проверено 1 апреля 2015 г.
  7. ^ Джон Кьюли и Кевин Глинн. Оценочные аннотации для Hope+. В Кей Дэвис и Р.Дж.М. Хьюз, редакторы, «Функциональное программирование: материалы семинара в Глазго 1989 года», «Семинары по вычислительной технике», страницы 329–337, Лондон, Великобритания, 1990. Springer-Verlag.

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

Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 17c21ee03ce4b814e9ba2d5fa1c90033__1696859520
URL1:https://arc.ask3.ru/arc/aa/17/33/17c21ee03ce4b814e9ba2d5fa1c90033.html
Заголовок, (Title) документа по адресу, URL1:
Hope (programming language) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)