Вопросы с тегом «functional-programming»

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

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

2
Действительно ли Haskell / Clojure не подходит для динамических систем, таких как моделирование частиц?
В предыдущих вопросах мне говорили, что функциональные языки программирования не подходят для динамических систем, таких как физический движок, главным образом потому, что мутация объектов обходится дорого. Насколько реалистично это утверждение и почему?

1
Является ли Rebol функциональным языком программирования?
Я столкнулся с Реболом, и мне было интересно об этом. Отсюда я столкнулся со следующим скриптом : use [feed questions answers][ feed: load-xml/dom http://stackoverflow.com/feeds/tag/rebol questions: map-each entry feed/get-by-tag <entry> [ find/match entry/get <id> "http://stackoverflow.com/q/" ] answers: make block! length? questions foreach question questions [ question: load-xml/dom join http://stackoverflow.com/feeds/question/ question foreach …

2
Кто первым придумал термин «функция высшего порядка» и / или «гражданин первого класса»?
Я понял, что задолго до Хаскелла, О'Камла или LISP функции высшего порядка были предметом академических исследований, а в математике Шенфинкель (в 1967 г.) и Хаскелль Карри (в 1968 г.) уже применяли такие методы, как карри, но был до того, как он был доступен на любом языке программирования. Схема, согласно Википедии …

1
Лучше использовать монаду ошибок с валидацией в ваших монадических функциях или реализовать собственную монаду с валидацией прямо в вашем bind?
Мне интересно, какой дизайн лучше использовать с точки зрения удобства использования / удобства обслуживания, а что лучше для сообщества. Учитывая модель данных: type Name = String data Amount = Out | Some | Enough | Plenty deriving (Show, Eq) data Container = Container Name deriving (Show, Eq) data Category = …

4
Что особенного в карри или частичном применении?
Я каждый день читаю статьи по функциональному программированию и стараюсь как можно больше применять некоторые практики. Но я не понимаю, что уникально в карри или частичном применении. Возьмем этот Groovy-код в качестве примера: def mul = { a, b -> a * b } def tripler1 = mul.curry(3) def tripler2 …

5
Измените мое мышление при подготовке к функциональному программированию
При переходе к функциональному стилю программирования после процедурного и ООП, что мне нужно знать заранее об «этом новом способе мышления»? Как вы готовитесь к погружению в мире FP и получаете его впервые? Какие основы нужно выучить и вначале разобраться?

1
Является ли функциональная декомпозиция действительно антипаттерном?
Пока я читал «Наихудшие анти-паттерны, с которыми вы столкнулись» , я щелкнул ссылку в этом посте, чтобы попасть на веб-сайт об анти-шаблонах. И страница http://sourcemaking.com/antipatterns/functional-decomposition заставила меня задуматься. Насколько плох этот анти-паттерн, и вообще ли он анти-паттерн? Потому что, хотя в настоящее время я занимаюсь в основном ООП-программированием, я все …

3
Геттеры и сеттеры на функциональных языках
Одним из принципов функционального программирования является использование чистых функций. Функция Pure - это функция, которая не имеет побочных эффектов и прозрачна по ссылкам. Получатели не являются ссылочно прозрачными - если метод вызова вызывается между вызовами метода получения, возвращаемое значение метода получения изменяется, даже если его параметры не изменяются (как правило, …

4
Какую парадигму использовать для написания шахматного движка?
Если бы вы собирались написать движок для игры в шахматы, какую парадигму программирования вы бы использовали (ООП, процедурный и т. Д.) И почему вы бы выбрали это? Под шахматным движком я подразумеваю часть программы, которая оценивает текущую доску и решает следующий ход компьютера. Я спрашиваю, потому что я думал, что …
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.