A>Собственно, прочитав эту статью, решил-таки попробовать изучить Lisp. A>По каким книгам это обычно делают?
Я изучал вот по этому, а потом по этому и этому.
A>Собственно, прочитав эту статью, решил-таки попробовать изучить Lisp.
Аналогично A>По каким книгам это обычно делают?
Ну не знаю, как обычно, но нармальные пацаны предпочитают курсы MIT. здесь
Здравствуйте, Кодт, Вы писали: К>Был такой двухтомник "Мир Лиспа", написанный двумя финнами. М.:Мир,1990. Очень симпатичная книга, но, боюсь, только оффлайн.
Я уже здесь постил — http://www.dvo.ru/tech/lisp/index.html — "Мир Лиспа" он-лайн
Здравствуйте, Кодт, Вы писали:
К>Здравствуйте, Astaroth, Вы писали:
A>>Собственно, прочитав эту статью, решил-таки попробовать изучить Lisp. A>>По каким книгам это обычно делают?
К>Был такой двухтомник "Мир Лиспа", написанный двумя финнами. М.:Мир,1990. Очень симпатичная книга, но, боюсь, только оффлайн.
Здравствуйте, fefelov, Вы писали:
F>Здравствуйте, Кодт, Вы писали: К>>Был такой двухтомник "Мир Лиспа", написанный двумя финнами. М.:Мир,1990. Очень симпатичная книга, но, боюсь, только оффлайн. F>Я уже здесь постил — http://www.dvo.ru/tech/lisp/index.html — "Мир Лиспа" он-лайн
Можно и я чуток поучаствую ? Значится так Все, что Вам насоветовали — хорошо и правильно. Кроме того, крайне полезными (разумеется ИМХО) являются следующие книги:
1. http://mitpress.mit.edu/sicp/full-text/book/book.html. Эту книгу Вам уже советовали. И это, как мне кажется, лучшее из всего что есть. Повторно упоминаю ее потому, что есть русский перевод. Насколько мне известно какое-то издательство собиралось ее печатать, но что-то там не получилось и некоторое время перевод торчал в Интернете, откуда я ее успел качнуть. Правда, без английского оригинала все равно не обойтись, поскольку в русском переводе нет рисунков, но сам перевод очень даже ничего. Если нужно — мыльте и я перешлю. Объем в сжатом виде 3 Мб;
2. http://www-2.cs.cmu.edu/~dst/LispBook/. Очень ясная и понятная книга. В свободном доступе, но на английском.
3. Двухтомник финнов (ИМХО, конечно) уже староват, хотя читается интересно. Кое-какие разделы просто великолепны, но в целом я бы не советовал слишком на него ориентироваться.
4. Есть в эл.виде оригинальная книга создателя Лиспа Дж.МакКарти. Для начинающего она ни к чему. Книга написана довольно сухо и реферативно. И порядочно таки устарела (как никак ей уже сорок с лишним лет). Книга ценна на мой неискушенный взгляд 1). солидным математическим обоснованием предмета и 2). замечаниями и рассуждениями в стиле "Дисциплины программирования" Эдсгера Дейкстры.
5. П.Хендерсон "Функциональное программирование.Применение и реализация". Выходила в серии "Математическое обеспечение ЭВМ" в 1983 году. Хрен (извиняюсь за свой французский) Вы ее где-нибудь найдете, но если найдете — поздравляю. Книга из серии "ЧИТАТЬ ОБЯЗАТЕЛЬНО". На мой взгляд, из всех перечисленных книг, эта книга почти так же важна и интересна, как и самая первая из моего списка (см.выше).
В общем — успехов
Приходиться заниматься гадостью — зарабатывать на жизнь честным трудом (Б.Шоу)
Здравствуйте, fplab, Вы писали:
F>1. http://mitpress.mit.edu/sicp/full-text/book/book.html. Эту книгу Вам уже советовали. И это, как мне кажется, лучшее из всего что есть. Повторно упоминаю ее потому, что есть русский перевод. Насколько мне известно какое-то издательство собиралось ее печатать, но что-то там не получилось и некоторое время перевод торчал в Интернете, откуда я ее успел качнуть. Правда, без английского оригинала все равно не обойтись, поскольку в русском переводе нет рисунков, но сам перевод очень даже ничего. Если нужно — мыльте и я перешлю. Объем в сжатом виде 3 Мб;
Можно мне? zverok@imho.com.ua
Заранее спасибо
Хмм... А лисп-то рулит, господа! Я тут подумал — выходит, что принципиально невозможно создать язык с такими же простыми и могучими средствами метапрограммирования. Сила лиспа как раз в его @#$%$^& скобках, мать их! А точнее, в отсутствии грамматики.
Здравствуйте, Gaperton, Вы писали:
G>Хмм... А лисп-то рулит, господа! Я тут подумал — выходит, что принципиально невозможно создать язык с такими же простыми и могучими средствами метапрограммирования. Сила лиспа как раз в его @#$%$^& скобках, мать их! А точнее, в отсутствии грамматики.
Ну, в прологе тоже средства метапрограммирования неслабые. Впрочем, причина та же.
Здравствуйте, Трурль, Вы писали:
Т>Здравствуйте, Gaperton, Вы писали:
G>>Хмм... А лисп-то рулит, господа! Я тут подумал — выходит, что принципиально невозможно создать язык с такими же простыми и могучими средствами метапрограммирования. Сила лиспа как раз в его @#$%$^& скобках, мать их! А точнее, в отсутствии грамматики. Т>Ну, в прологе тоже средства метапрограммирования неслабые. Впрочем, причина та же.
Кстати, коллеги ! Лисп & Пролог это, конечно, квадратиш практиш гут ! Но что касается метапрограммирования, то есть еще один язык — Рефал (http://www.refal.org/). Когда-то "Компьютерра" посвятила целый номер его создателю — Валентину Турчину. Поглядите, кому интересно.
Приходиться заниматься гадостью — зарабатывать на жизнь честным трудом (Б.Шоу)
A>Собственно, прочитав эту статью, решил-таки попробовать изучить Lisp. A>По каким книгам это обычно делают?
Вот еще одна книга. Очень хорошее введение в язык, описываются многие фичи и много нетривиальных примеров. Книга в данный момент готовится к печати, поэтому позже может исчезнуть из открытого доступа — http://www.gigamonkeys.com/book/
Но есть в ней и минусы. Автор (Peter Seibel) явно императивщик, это заметно по его желанию все время что-нибуль присвоить переменным, по любви к массивам, объектам и т.п. Функциональному подходу уделено очень мало внимания, функции высшего порядка почти не используются. Поэтому не стоит читать эту книгу не имея представления о функциональном программировании.
Прочитав статью я выслушал ИМХО одного человека(автора статьи). Теперь хотелось бы выслушать мнения остальных, кто сталкивался с этим языком. Настолько ли он хорош и коково его будующее?
Здравствуйте, Erick, Вы писали:
E>Прочитав статью я выслушал ИМХО одного человека(автора статьи). Теперь хотелось бы выслушать мнения остальных, кто сталкивался с этим языком. Настолько ли он хорош и коково его будующее?
Как правильно заметил автор статьи, понять, что один язык мощнее другого, можно только изучив более мощный. Макросов Лиспа действительно нигде больше нет, и это действительно очень мощный инструмент. С другой стороны насколько я могу понять, фичи других языков (особенно mainstream) на Лиспе реализуются без особых проблем. Взять хотя бы макрос loop —
(loop for i from 1 to 10 do ....)
(loop for el in '(1 2 3) summing el into total finally (return total))
(loop for i in *random*
counting (evenp i) into evens
counting (oddp i) into odds
summing i into total
maximizing i into max
minimizing i into min
finally (return (list min max total evens odds)))
Да C# с С++ и рядом не валялся по возможностям циклов.
Поэтому Lisp изучить безусловно стоит.