Какой хороший начальный текст о функциональном программировании? [закрыто]

Мне нравится изучать языки за пределами моей зоны комфорта, но мне было трудно найти место для функциональных языков. Я слышал много хорошего о структуре и интерпретации компьютерных программ , но когда я пытался прочитать ее пару лет назад, мне показалось, что она просто над головой. Я лучше справляюсь с книгами, чем с веб-сайтами, но когда я посещаю местный книжный магазин, книги на LISP выглядят довольно страшно.

Итак, что является хорошей отправной точкой? Моя цель - уметь использовать функциональный язык программирования для решения простых задач за 6 месяцев или около того, а также возможность переходить к более сложным темам, распознавать, когда функциональный язык является подходящим инструментом для работы, и использовать этот язык для решить больше проблем в течение 2-3 лет. Мне нравятся книги, в которых много примеров, но в которых есть проблемы, над которыми нужно работать. Существует ли такая вещь для функциональных языков?

22.08.2008 18:46:09
В вашем местном книжном магазине есть книги на Лиспе?
Brendan Foote 8.01.2009 04:24:19
в магазине компьютерных книг, который я посетил на прошлой неделе, были «Земля Лисп», «Практический общий Лисп» и «SICP» ...
Rainer Joswig 5.12.2011 21:24:11
15 ОТВЕТОВ
РЕШЕНИЕ

Маленький интриган очень хорошо учит рекурсии, и его легко и весело читать.

Мне также понравился язык программирования для более широкого знакомства с языком.

30
22.08.2008 18:52:28

Я нашел The Little Schemer отличным введением в функциональное программирование. Он полностью основан на простых примерах размером с укус, которые основаны на продолжении книги.

4
22.08.2008 18:54:53

Haskell - очень хороший функциональный язык программирования для начинающих. Кто-то спросил о хороших ресурсах для Хаскелла, так что я укажу вам там .

Если вы ищете хорошую книгу по функциональному программированию, я бы порекомендовал «Функциональное программирование: практика и теория» Брюса Макленнана.
Тем не менее, вы должны освежить свою теорию множеств и логику, прежде чем читать ее. Включает примеры на LISP, Haskell и других языках.

2
23.05.2017 10:30:55

Если у вас есть опыт работы с .NET, эксперт #F - это хорошо.

F # является производным от OCaml. Лисп более чистый, чем функциональные языки.

1
22.08.2008 18:55:31
Я не думаю, что считаю Lisp более чистым, чем OCaml. Большинство Лиспов ничего не делают, чтобы помешать вам мутации. OCaml, с другой стороны, делает невозможным изменение переменных, если вы не объявите их как изменяемые.
apg 26.09.2008 16:56:11

SICP - отличная книга.

Это, вероятно, мой уклон, но я подумал, что в ocaml довольно легко попасть. Вы можете программировать в нескольких разных стилях, пока не почувствуете себя полностью комфортно. Я опубликовал кучу ссылок на ссылки на Хаскелл и Окамл, которые являются книгами, с примерами и так далее, которые кажутся прямо в вашем переулке.

Если вы предпочитаете Lisp, вы можете попытаться решить 99 проблем в Lisp (что вы можете сделать на любом языке), или вы можете посмотреть лекции людей, написавших SICP.

В дальнейшем вы получите « чисто функциональные структуры данных », так как они углубятся в основательный глубокий дизайн и соображения, которые вы должны принимать во внимание на функциональных языках - он использует ML (который происходит от ocaml) ,

16
23.05.2017 12:34:51
Я сейчас читаю SICP, но я не уверен, о чем ты говоришь: «Лагранж»? В моей копии книги в 2-м издании
michiakig 27.08.2010 15:37:46
Эта часть имела в виду SICM (структура и интерпретация классической механики), моя ошибка.
nlucaroni 30.08.2010 15:32:12

Я слышал хорошие вещи о функциональном программировании на Haskell , но я также нашел этот список книг по функциональному программированию на Amazon, который может быть полезен для вас.

0
22.08.2008 18:58:47

Мне очень нравится «Haskell: ремесло функционального программирования» Томпсона, потому что он хорошо написан, и Haskell позволяет легче запускать, чем другие функциональные языки, но при этом совершенно чист (в отличие от Lisp или Scheme).

5
22.08.2008 19:00:50
+1, в книге много отличных упражнений, так как она написана в основном как учебник. Объяснения и повествование также делают книгу хорошим выбором.
Mark Kegel 3.03.2009 22:14:51

Поскольку существует множество различных функциональных языков программирования, трудно рекомендовать книги. Но если вы интересуетесь Common Lisp, недавно я читал «Практический Common Lisp» Питера Сейбеля, который вы можете бесплатно проверить в Интернете, прежде чем выложить на него свои с трудом заработанные деньги. Это довольно нежное введение в CL, с отличными объяснениями и множеством примеров. Сейбел - великий писатель (пример: прочитайте историю Mac ), он хорош в том, чтобы держать вас в курсе, и я думаю, что именно там SICP падает. Это так сухо! Но хотя Practical Common Lisp довольно тяжелый пример, на самом деле у него нет проблем для проработки, хотя примеры в основном предназначены для того, чтобы вы продолжали работать и опираться на них.

Еще одна хорошая книга, ориентированная на схемы: как разрабатывать программы . ( Онлайн ) У меня было не так много времени с этой книгой, я был скорее Лиспером, чем Схемером, но он хорошо написан, имеет хорошие объяснения и примеры, и у меня много упражнений для работы. Это кажется довольно популярным в толпе Scheme.

5
22.08.2008 19:27:18

Я учился у Джеффри Уллмана « Элементы программирования ML» , и это очень хорошо. Он теряет баллы за стандарт ML, когда OCaml, F # и Haskell (кажется) более популярны.

4
22.08.2008 19:28:49

Попробуйте Real World Haskell . Это бесплатно онлайн.

21
23.08.2008 01:29:15

Руководство по Schemers и соответствующее программное обеспечение - действительно хорошие вещи

http://www.schemers.com/tsg.html

5
15.09.2008 12:46:20

Я чувствую, что чисто функциональные структуры данных Криса Окасаки достойны внимания.

К вашему сведению http://www.cs.cmu.edu/~rwh/theses/okasaki.pdf

4
12.10.2008 21:42:17

Я действительно рекомендую "On Lisp" от Пола Грэма.

Это сжато и очень читабельно даже для начинающих в функциональном программировании (как я был, когда я читал это). Он содержит множество очень коротких примеров, каждый из которых помогает понять одну вещь.

Я часто думал, читая эту книгу: это просто язык, содержащий именно те функции, которые я когда-либо хотел в других (нефункциональных) языках, но никогда не получал. :-( И это именно та книга, чтобы выучить ее, всегда понятно, иногда даже смешно!

Вы можете получить его бесплатно на сайте автора !

11
5.12.2008 15:15:05

Ознакомьтесь с введением в функциональное программирование . Это предлагает другую точку зрения.

5
16.02.2009 07:04:15
1
30.08.2010 15:38:35