Примеры использования Лиспа на Русском языке и их переводы на Английский язык
{-}
-
Official
-
Colloquial
Так что программы не были данными и не хватало жизненно важных элементов Лиспа.
Без этого все свелось бы к чему-то наподобие компиляторов Лиспа для других машин.
Мне показалось, что его можно использовать как средство для изучения Лиспа.
Чтобы получить что-то подобное системе машины- Лиспа, нужен микрокод специального назначения.
В процессе этого я стремился сделать абсолютно минимально возможную реализацию Лиспа.
Удержаться на плаву( 5), я начал дублировать все улучшения в системе машины- Лиспа, которые делали в Symbolics.
Это был трехсторонний договор, в котором обе компании лицензировали исходные тексты системы машины- Лиспа.
Берни Гринберг утверждает, что реализация Emacs Дана Уайнреба для машины- Лиспа вышла раньше реализации Гринберга для Multics.
Она отличается возможностью компилировать в машинный объектный код изагружать модули машинного объектного кода прямо в ядро Лиспа.
Как и почти во всех других диалектах Лиспа, списки в Common Lisp состоят из точечных пар( conses). cons- это структура данных с двумя слотами.
Примитивная функция Лисп EVAL использует этот код, представленный как данные Лиспа, вычисляя побочные эффекты и возвращая результат.
В семидесятых годах сообщество Лиспа не ограничивалось Лабораторией искусственного интеллекта Массачусетского технического института, и не все хакеры были в этом институте.
Есть одна интересная выгода, которую можно извлечь из применения такого мощного языка, как вариант Лиспа, в качестве первичного языка расширений.
Выбор в 1978 году Лиспа обеспечил большую, чем когда-либо прежде, гибкость, и за ним последовало большинство последующих реализаций Emacs.
В нем был язык программирования, известный как“ mocklisp”, он синтаксически выглядит какЛисп, но в нем нет структур данных Лиспа.
К сожалению, у Гринблэтта не было никакого делового опыта,так что другие люди из группы машины- Лиспа говорили, что они сомневаются в том, что он сможет это сделать.
Но это делало ее недостаточно хорошей, чтобы писать на ней операционную систему, так чтоя отказался от мысли о том, чтобы сделать систему наподобие машины- Лиспа.
Идея состояла в том, чтобы писать интерпретатор Лиспа и низкоуровневые части редактора вместе, так что части редактора были встроенными средствами Лиспа.
Возможность сделать что-нибудь на Лиспе впервые появилась у меня, когда я был на младших курсах в Гарварде и писал интерпретатор Лиспа для PDP- 11.
Дальнейшим усовершенствованием стали две инструкции, которые специальным образом поддерживали функции Лиспа, уменьшая стоимость вызова функций до 20 тактов в некоторых реализациях Symbolics.
Ну, если у вас нет компилятора Лиспа, вы не можете написать весь редактор на Лиспе- он был бы слишком медленным, особенно перерисовка, если бы пришлось выполнять Лисп на интерпретаторе.
В мае 1983года он вынашивал планы разработки свободной операционной системы, но он к тому времени, возможно,еще не принял решения сделать ее системой типа Unix, а не подобием машины- Лиспа Массачусетского технического института.
Столмен: Сейчас лента содержит GNU EMACS( одна версия подходит для всех компьютеров); Bison, программу, заменяющую YACC;MIT Scheme, сверхупрощенный диалект Лиспа профессора Сусмена; и Hack, игру об исследовании подземелий, похожую на Rogue.
Там был интерпретатор Лиспа, но я реализовал средства для решения специальных задач редактирования прямо на Си- сюда входили манипуляция буферами редактора, вставка текста в начало, чтение и запись файлов, перерисовка буфера на экране, управление окнами редактора.
Scheme начинался с попытки понять модель акторов Карла Хьюитта, для чего Стил иСассман написали« крошечный интерпретатор Лиспа», а затем« добавили механизм создания акторов и посылки сообщений».
Как получить что-то вроде этого на платформе, где у них не было полнофункциональной реализации Лиспа. У MacLisp для Multics был как компилятор, так и интерпретатор- это была полностью оснащенная система Лисп- нолюди хотели реализовать что-то подобное на других системах, где у них не было уже написанного компилятора Лиспа.
В это время можно было сделать компьютер, который стоил примерно столько же, сколько другие компьютеры, не предназначенные для Лиспа, но он выполнял бы Лисп гораздо быстрее, чем они, и при этом с полной проверкой типов на каждой операции.
S- выражения были первоначально предназначены только для представления данных, которыми должны были манипулировать M- выражения, нопервая реализация Лиспа была интерпретатором S- выражений, в которые планировалось переводить М- выражения, и программисты Lisp вскоре привыкли к использованию S- выражений как для данных, так и для кода.
Общий Лисп- объектно-ориентированный функциональный язык программирования высокого уровня.
Сообщество функциональных языков приняло в качестве стандарта ML и Лисп.