Введение
UrzaЭтот блог или, если угодно, канал посвящаяется моим изысканиям в мире Lisp. Если конкретно, то Common Lisp.
Кто не знает что такое Common Lisp - могут обратится к wiki: https://ru.wikipedia.org/wiki/Common_Lisp
Я только начинаю изучать этот язык. Все что вы тут найдете является, скорее, моими "мнемоническими заметками". Их может использовать кто угодно в целях изучения этого замечательного языка программирования. Никакой структурированной подачи материала не планируется. Все будет происходить по велению силы моих мыслей. Ожидается, что у меня будет находиться достаточно времени для ведения этого блога, но ничего не могу обещать - пока настрой позитивный.
В самом начале я загрузил две книги, взятые в свободном доступе в Интернет:
- Structure and Interpretation of Computer Programs (Структура и интерпретация компьютерных программ). Эта книга не о Common Lisp, но рекомендуется к прочтению программистам на других языка программирования.
- Practical Common Lisp (суть - Практическое применение Common Lisp). Автор предлагает изучать Common Lisp на примерах, что предполагает более занимательный и быстрый (с точки зрения практического применения) вход в Common Lisp.
Предполагается, что это лучшие материалы для введения и последующего изучения Common Lisp на русском языке (это лучший вариант для таких как я - не очень хорошо знающих английский язык).
Читать эти книги рекомендуется с подготовленной площадкой для проведения эксперментов с предлагаемыми примерами и решения задач.
В Сети достаточно много материалов, в том числе и на русском языке, о том как подготовить такую площадку, я лишь напишу о требуемых компонентах.
Для жизни и работы я использую операционную систему на базе Linux. Для изучения и программирования на Common Lisp я использую SBCL http://www.sbcl.org/, SLIME https://github.com/slime/slime и Emacs https://www.gnu.org/software/emacs/
Думаю вы легко найдете в Сети как установить и настроить эти компоненты в своей операционной системе.
Кстати, для изучения примеров из SICP могу порекомендовать Guile https://www.gnu.org/software/guile/ - Это GNU реализация Scheme (диалект Lisp). Примеры в SICP приведены на этом самом диалекте.