Лисп: различия между версиями

Содержимое удалено Содержимое добавлено
мНет описания правки
Нет описания правки
Строка 2:
__NOEDITSECTION__
<div style="max-width:52em;margin:1.3em auto 1em 4%;">
<span style="margin-left:-0.1em"><big>Лисп</big></span> — старейший из ныне живых языков программирования,второй<ref>[[w:Ассемблер|Ассемблер]] язык машины, а не программирования, аПосле [[w:Фортран|ФортранФортрана]] — не вполне жив.</ref> аязык по высотепрограммирования абстракциивысокого и по выразительности превосходит все прочиеуровня. Это первыйПервый язык [[:Категория:Функциональное программирование|функционального программирования]], но любые парадигмы, философии, привычки, условия среды́ он поддерживает гибко и эффективно. Код Лиспа представлен…<source style="display:block;clear:both;width:35em;margin:0 auto;" lang="lisp">
 
Код Лиспа представлен…<source style="display:block;clear:both;width:35em;margin:0 auto;" lang="lisp">
(через нагромождение (круглых) скобок)</source>
<span style="margin-left:-0.8em">…[[w:Связный список|односвязным списком]].</span>, деревом — базовой структурой языка. Элементарные части программы: числа, [[Электронный текст|слова]], указатели, имена типов, операторы, — это возможные значения ''символа'', обозначающего их в дереве кода. Символьное представление можно определить для любой ''формы'' — корректно вычислимого выражения с любыми параметрами, выводимыми значениями и воздействиями на среду. Сплошная типизация «статических языков» в Лиспе заменяется декларацией типов, — необязательной, но допустимой на любом шаге создания и исполнения программы, — равно, как и включение произвольного кода.
 
Познание вычисления как такового — стезя академического курса и лет практики, а посвящение в Лисп также требует отразить привычные ограничения прочих — «непрограммируемых» — языков программирования. Задача гигантская, однако, Лиспу досталось внимание величайших компьютерных гениев, и нам остается взобраться на плечи гигантов, уместно освещая избранную [[Лисп/Литература|литературу о Лиспе]]. Ясно также, что кратчайшие пути обучения расплетаются по локальным оптимумам для разных вычислительных задач. Перед вами — не просто [[:w:Викиучебник|учебник в свободном доступе]], а домашняя страница <big>открытой школы</big>, где каждый может быть и слушателемучеником, и  автором.<ref>Изучите [[Справка|справку]] по сайту Викиучебник, освойтесь с [[вики]]-средой, общайтесь с читателями и соавторами (<code>[[Обсуждение:Лисп]]</code>, <code>[[Обсуждение:Лисп/Типы данных]]</code> и так далее.)</ref></div>
 
Познание вычисления как такового — стезя академического курса и лет практики, а посвящение в Лисп также требует отразить привычные ограничения прочих — «непрограммируемых» — языков программирования. Задача гигантская, однако, Лиспу досталось внимание величайших компьютерных гениев, и нам остается взобраться на плечи гигантов, уместно освещая избранную [[Лисп/Литература|литературу о Лиспе]]. Ясно также, что кратчайшие пути обучения расплетаются по локальным оптимумам для разных вычислительных задач. Перед вами — не просто [[:w:Викиучебник|учебник в свободном доступе]], а домашняя страница <big>открытой школы</big>, где каждый может быть и слушателем, и автором.<ref>Изучите [[Справка|справку]] по сайту Викиучебник, освойтесь с [[вики]]-средой, общайтесь с читателями и соавторами (<code>[[Обсуждение:Лисп]]</code>, <code>[[Обсуждение:Лисп/Типы данных]]</code> и так далее.)</ref></div>
{{wikipedia}}
<div style="max-width:52em;margin:1.2em auto 0 4%;padding-left:0.1em;">
Строка 12 ⟶ 15 :
<!--<small>''([[(несуществующая страница)|Красным]] — даже не начатое.)''</small>-->
*[[Лисп/Историософия|Историософия]]<small>: происхождение и философские основы Лиспа, его силы и слабости</small>
*[[Лисп/Рабочая среда|Рабочая среда]]<small>:
** Диалект [[Clojure]]
** Среда Scheme:
* [[Лисп/Литература|Литература]]<small>: о Лиспе или даже ''про'' Лисп</small>
** [http://mitpress.mit.edu/sicp/ «Строение и толкование компьютерных программ»] — Гарольд Абельсон и Джеральд Сассман, MIT Press, 1984
**: <small>Книга вынесена в [http://creativecommons.org/licenses/by-nc/3.0/ свободный оборот], сделан [http://lj.rossia.org/users/gogabr/65698.html перевод] на русский. В сети также авторские [http://groups.csail.mit.edu/mac/classes/6.001/abelson-sussman-lectures/ видеолекции].</small>
* [[Лисп/Литература|Литература]]<small>: о Лиспе или даже ''про'' Лисп</small>
** [http://lisp.ru/page.php?id=17 Хювенен Э., Сеппянен И. Мир Лиспа. В 2-х т. - М.: Мир, 1990]
** [http://pcl.catap.ru/doku.php Русский перевод] книги [http://gigamonkeys.com/book/ «Practical Common Lisp»] — Peter Seibel, 2005
Строка 23 ⟶ 27 :
*** ''The Anatomy of Lisp'' — John Allen, 1978
*** ''[http://lib.store.yahoo.net/lib/paulgraham/onlisp.pdf On Lisp]'' — [[:w:Грэм, Пол|Paul Graham]], 1993
*** ''[http://www.lispworks.com/documentation/HyperSpec/Front/ Common Lisp HyperSpec], в мозг!
*[[Лисп/Синтаксис|Синтаксис]]
*[[Лисп/Типы данных|Типы данных]]
Строка 33 ⟶ 37 :
*[[Лисп/Оптимизация|Оптимизация]]
*[[Лисп/Макросы|Макросы]]
 
<!-- КРАСНОТА
===Разности===
*[[Лисп/Амортизация|Амортизация]], [[Лисп/Приспособляющиеся структуры|приспособляющиеся структуры]]
*[[Лисп/Подпрограммы]]<small>: как локализовать эффекты низкоуровневых процедур. Импорт из Си.
*[[Лисп/Низкоуровневое программирование|Низкоуровневое программирование]]
 
===Тонкости===
*[[Аспектно-ориентированное программирование]]<small> (примеры на [[Java]])</small>-->
<!-- ПРЯЧУ КРАСНОТУ ДО ЛУЧШИХ ВРЕМЕН
===Применения===
*[[Лисп/Прототипирование|Прототипирование]]
*[[Лисп/Информационные сети|Информационные сети]]
*[[Лисп/Человеческие интерфейсы|Человеческие интерфейсы]]
**[[Лисп/Веб-строительство|Веб-строительство]]
*[[Лисп/Делопроизводство|Делопроизводство]]
*[[Системы автоматического управления]]
*[[Агенты]] ([[Clojure]])
*[[Лингвоанализ]]: распознание речи и смысла, говороботы
*[[Различение образов]] и [[раскопка данных]]-->
</div>
<div style="max-width:52em;margin:1.6803em auto 0 4%;">