Lisp Community - Качественные учебники / ресурсы
Как и многие другие люди, заинтересованные в изучении Lisp, я считаю, что доступные ресурсы не являются лучшими для начинающих и в конечном итоге мешают многим новым людям изучать его. Считаете ли вы, что может быть создано какое-то сообщество, с веб-сайтом, форумом или чем-то, что предоставляет хорошие (как по качеству) ресурсы / учебные пособия для пользователей Lisp, возможно переведенные на несколько идиом? Таким образом, новички, не обладающие необходимыми навыками для написания учебных пособий, могут помочь в их переводе. Это плохая идея или это то, что может быть достигнуто? Дайте мне обратную связь или зажигают меня:D
7 ответов
Существует два популярных диалекта Лисп - Common Lisp и Scheme. Оба имеют отличные книги / учебные пособия и реализации доступны онлайн бесплатно. Начинающие могут начать со Схемы, которая проще. Некоторые ресурсы для изучения схемы:
Бесплатные книги:
- Учите себя Схеме в Fixnum дней. (PDF)
- Язык программирования схемы.
- Структура и интерпретация компьютерных программ.
- Как разрабатывать программы
Интернет-сообщества / ресурсы:
- Последняя схема стандарта.
- Схема поваренной книги.
- Схема запросов на реализацию
- Схема связанных исследований
- http://www.schemers.org/
- http://groups.csail.mit.edu/mac/projects/scheme/
Реализация схемы, подходящая для начинающих, - это схема PLT.
Бесплатные книги для изучения Common Lisp:
- Практический Лисп
- На Лиспе
- Common Lisp HyperSpec (Ссылка)
- Common Lisp: Нежное введение в символические вычисления
Интернет-сообщества / ресурсы для Common Lisp:
Популярные реализации Common Lisp: SBCL, CLISP, Clozure CL, Allegro CL
Лисп существует уже давно, есть много (фрагментированных) сообществ. На самом деле нет никакого способа "создать" общее сообщество, особенно снаружи.
Пол Грэхем был бы вероятным (IMNO, N= наивным) человеком, который потенциально мог бы объединить большое сообщество LISP, учитывая его популярность среди молодых программистов, а также его опыт работы в LISP (написание On Lisp). Тем не менее, он решил создать еще один диалект Lisp, Arc.
Многие люди писали о фрагментации сообщества Lisp или о неспособности Lisp "завоевать популярность". Несколько примеров: здесь, здесь, здесь и здесь. Так что, хотя ваша идея хорошая, она, вероятно, бесплодна.
При этом, не позволяйте мне помешать вам подняться и стать такой объединяющей фигурой в сообществе Лисп.
Что касается существующих учебных пособий, Emacs Wiki является хорошей отправной точкой для изучения Emacs Lisp. И для введения в Scheme, а также для хорошего знакомства с программированием в целом, есть классическая структура и интерпретация компьютерных программ.
Я считаю эти два ресурса хорошей отправной точкой для изучения Emacs Lisp и Scheme. Я не играл с Arc, но, вероятно, были бы хорошие уроки по изучению Arc - потому что он отчасти разработан, чтобы быть хорошим языком для создания основных веб-приложений.
Вот форум: Lisp Forum, а вот сообщество: Planet Lisp
Вот довольно приличный пост, который вам может пригодиться, как выучить Lisp.
Одной из сильных сторон Lisp является то, что, будучи зрелым языком, есть много действительно хороших книг по этому вопросу.
На самом деле, есть довольно много бесплатных книг CL, доступных онлайн:
"Common Lisp: Нежное введение в символические вычисления" охватывает основы, но может быть слишком мягким, в зависимости от вашего уровня.
"Успешный Лисп" является достаточно полным и ИМХО лучшим онлайн-ресурсом для изучения CL, если вы уже немного программировали на другом языке.
"Practical Common Lisp" нацелен на опытных программистов и, безусловно, является одной из лучших доступных книг по Лиспу - одной из немногих, которые явно пытаются объяснить "использование в реальном мире".
"На Лиспе" - интересное чтение для продвинутых программистов на CL, в основном охватывающее макросы.
Помимо них, есть незаменимая Hyperspec, htmlized версия стандарта и CLtL2, который был стандартом де-факто до ANSI (все еще ценным, поскольку многие люди находят его более доступным, чем Hyperspec. По крайней мере, иногда он показывает вещи с другой точки зрения).
Наконец, есть Lisp Forum и cllisp. Хотя на cll много шума, вы можете получить очень проницательные ответы и поучиться у мастеров. Будучи новичком, нужно постараться написать вдумчивые вопросы по cll и иметь толстую кожу.
Загрузите, установите, запустите http://download.plt-scheme.org/drscheme/.
Прочитайте его "Руководство".
Будучи новичком в LISP, я бы хотел порекомендовать Clojure (за последние шесть месяцев я играл в Scheme и Emacs Lisp). Я играл с Clojure только последние пару дней.
Работа на JVM означает, что большинство людей уже имеют большую часть среды Clojure, им нужно только файлы.jar и плагин для своего редактора или IDE (в любом случае, Java). Таким образом, начать работать легче, чем Scheme или CL с точки зрения выбора.
Большинство новых программистов, по крайней мере, знакомы с Java, который Clojure, конечно, использует довольно хорошо, что означает, что во время обучения они могут сосредоточиться на lisp, и немного меньше на библиотеках. Существует множество концепций, на которых им лучше сосредоточиться.
С другой стороны, у Java много стигматизации. Но у Clojure есть много чего, и я верю в хорошее будущее, а программирование Clojure - imho, очень доступно, и как Joy of Clojure, так и Clojure в действии скоро появятся.
Еще одна замечательная книга для изучения схемы и ее стиля программирования, даже больше, когда вы пришли из ОО-мира, лучше начать с нуля.