Чи є канонічний посібник чи книга про концепції функціонального програмування? [зачинено]


22

Виходячи з процесу програмування / програм програмування, я схильний писати програми Схеми процедурним чином. Мене б заважало вивчати схему або Lisp функціонально з нуля, щоб якось скинути розум мого програміста.

Чи є там підручник чи книга, що є фактичним стандартом для опису найкращих практик, методологій проектування та іншої корисної інформації про концепції функціонального програмування? Що з цією книгою робить її особливою?


Я б почав з ccs.neu.edu/home/matthias/BTLS Функціональне програмування більше схоже на чисту математику, ніж програмування OO. Якщо ви думаєте про це так, це може допомогти.
Брайан Макін

Якщо ви віддаєте перевагу слухати читання, SICP також має відео лекції . Зараз я на лекції 6b. :)
Дайстер

Огляньте Землю Ліса і виконайте всі вправи.
Сардатріон

Відповіді:


14

Використай це.

Якщо ви щодня займаєтесь функціональним програмуванням, можливо, меншими програмами чи вправами з книг, тоді вам буде краще.

Я використовував його з першої лекції програмування в університеті. На початку це було дуже важко, тому що воно настільки різне, але зараз я віддаю перевагу імперативному програмуванню.

Якщо ви шукаєте хорошу книгу, я б рекомендував функціональне програмування у реальному світі: із прикладами на F # і C # від Томаша Петричека та Джона Скіта


1
Книгу можна також перевірити тут
Gulshan

11

Книга, яку я завжди бачу рекомендованою, коли говорити про схему чи Лісп, - це Структура та інтерпретація комп'ютерних програм . Він доступний у вільному доступі на цьому веб-сайті, і я думаю, що він надається у форматі PDF, якщо шукати.

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

Якщо ви цікавитесь іншими функціональними мовами програмування, мені сказали, що робити вправи на таких мовах, як Haskell або F #, досить просто. Я думаю, що є також блогер, який працює через SICP, використовуючи Haskell і розміщуючи свої рішення для вправ, але я не можу зараз знайти посилання.


Хто є Білл Ящірка billthelizard.com за 500, будь ласка. Хоча я думаю, що він використовує схему.
Брайан Р. Бонді

Так, я погоджуюся з тим, що SICP є чудовою книгою для вивчення програми FP у схемі. Якщо ви не одружені на схемі, але хочете розглянути можливість навчання Haskell, тоді Real World Haskell також є чудовим читанням.
Магнус

+1 для SICP. Я працював над його частинами з Clojure, до тих пір, поки ви готові зробити трохи розумової гімнастики, я думаю, що це буде працювати для будь-якої мови, схожої на Lisp.
mikera

2
Існує також How to Design Programs , який був спеціально розроблений для усунення деяких недоліків у програмі SICP, які викладені у дуже доступному та влучно названому документі "Структура та інтерпретація навчальної програми з інформатики" .
Йорг W Міттаг

-2

Спробуйте навчитися математиці та адаптуйтеся до її стилю. Що таке функції? Що таке змінна? Чим змінні відрізняються від констант і як їх немає?


Це насправді не відповідає на запитання, яке стосується того, де можна знайти відповіді на поставлені вами питання.
Матьє
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.