Portable Standard Lisp ( PSL ) - это язык программирования , диалект языка Lisp . PSL был вдохновлен его предшественником, Standard Lisp и Portable Lisp Compiler . Это хвостовая рекурсия , поздняя привязка (или динамическая привязка ), она была разработана исследователями из Университета Юты в 1980 году, выпустившим PSL 3.1; разработка была передана разработчикам Hewlett-Packard в 1982 году, которые выпустили PSL 3.3 и выше. [1] Portable Standard Lisp был доступен как комплект, содержащий экранный редактор., компилятор и интерпретатор для нескольких вычислительных платформ аппаратного обеспечения и операционных систем , включая Motorola 68000 series , DECSYSTEM-20s , Cray-1s , VAX и многие другие. Сегодня PSL в основном разрабатывается и предоставляется Konrad-Zuse-Zentrum für Informationstechnik Berlin (ZIB). Его основное современное использование - это основной язык для реализаций Reduce . [ необходима цитата ]
Парадигмы | Мультипарадигма : функциональная , процедурная , объектно-ориентированная , рефлексивная , мета |
---|---|
Семья | Лисп |
Разработчики | Университет Юты, Институт Хьюлетт-Паккарда Цузе, Берлин |
Впервые появился | 1980 |
Печатная дисциплина | Динамичный , сильный |
Сфера | Лексический , необязательный динамический |
Язык реализации | Лисп , язык ассемблера |
Платформа | 68000 , DECSYSTEM-20 , Cray-1 , VAX |
Лицензия | BSD |
Веб-сайт | пользователь |
Под влиянием | |
Лисп , стандартный Лисп, переносимый компилятор Лисп | |
Под влиянием | |
Уменьшать |
Как и большинство старых Lisp, на первом этапе PSL компилирует код Lisp в код LAP, который является еще одним кроссплатформенным языком. Однако там, где более старые Lisp в основном компилировали LAP непосредственно на язык ассемблера или в какой-либо промежуточный компонент, зависящий от архитектуры, PSL компилирует LAP в код C , который будет выполняться на языке виртуальных машин; поэтому программы, написанные на нем, в принципе так же переносимы, как и C, что очень переносимо. Компилятор был написан на PSL или более примитивном диалекте под названием System Lisp или SYSLISP как «... эксперимент по написанию производственного Lisp на самом Lisp, насколько это возможно, с лишь небольшими количествами кода, написанного вручную на языке ассемблера. или другие системные языки ". [1], так что весь ансамбль мог загружаться сам, а улучшения компилятора улучшили его. В некоторых более поздних выпусках был пакет совместимости с Common Lisp , но он не поддерживается в современных версиях.
Критика
Portable Standard Lisp имеет меньше возможностей, чем другие Lisp, такие как Common Lisp , и некоторые люди находили его неприятным в использовании. Ричард П. Габриэль написал в своем популярном эссе LISP: хорошие новости, плохие новости, Как выиграть большой , [2] «третий самый стандартный Лисп был портативный Стандартный Lisp, который бежал на многих машинах, но очень мало кто хотел использовать его ; ".
График
Рекомендации
- ^ a b Габриэль, Ричард П. (май 1985 г.). Производительность и оценка систем Lisp (PDF) . Кембридж, Массачусетс: MIT Press ; Серия компьютерных систем. С. 75, 294. ISBN 0-262-07093-6. LCCN 85-15161 .
- ^ Габриэль, Ричард П. «Лисп: хорошие новости, плохие новости, как выиграть по-крупному» . Песни снов . Проверено 25 апреля 2019 .
Внешние ссылки
- Официальный сайт Portable Utah Standard Lisp
Эта статья основана на материалах, взятых из Free On-line Dictionary of Computing до 1 ноября 2008 г. и включенных в соответствии с условиями «перелицензирования» GFDL версии 1.3 или новее.