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

StackOverflow https://stackoverflow.com/questions/23166

Вопрос

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

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

Это было полезно?

Решение

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

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

Другие советы

Попробуй Реальный Мир Haskell.Это бесплатно в Интернете.

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

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

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

Дальше по дороге, ухватитесь за "Чисто Функциональные структуры данных", поскольку это приведет к жесткому глубокому дизайну и соображениям, которые вы должны учитывать в функциональных языках - он использует ML (производный от ocaml).

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

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

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

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

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

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

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

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

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

Проверьте Введение в функциональное программирование.Это открывает другую перспективу.

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

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

Я чувствую Чисто Функциональные структуры данных на книгу Криса Окасаки стоит взглянуть.

К ТВОЕМУ сведению http://www.cs.cmu.edu /~rwh/тезисы/okasaki.pdf

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

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

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

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

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top