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

10
Как познакомить вашу команду с функциональным стилем кодирования?

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

10
Функциональные языки программирования запрещают побочные эффекты?

Согласно Википедии, функциональные языки программирования , которые являются декларативными, запрещают побочные эффекты. Декларативное программирование в целом пытается минимизировать или устранить побочные эффекты. Также, согласно Википедии, побочный эффект связан с изменениями состояния. Таким...

10
Почему большинство анонимных функций не могут быть скомпилированы JIT и никогда не будут оптимизированы?

Я только что прочитал https://techfindings.one/archives/2652 о функциональном программировании и натолкнулся на это: анонимные функции часто не могут быть скомпилированы JIT и никогда не будут оптимизированы Может кто-нибудь объяснить мне, почему это...

10
Куда мы помещаем код «спрашивая мир», когда отделяем вычисления от побочных эффектов?

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

10
Как называется функциональный аргумент в сгибе

В функции более высокого порядка сложите / уменьшите, как называется функциональный аргумент, если он есть? Я работаю над библиотекой монадической табличной обработки, где строки складываются, чтобы произвести простой анализ (например, найти минимум, максимум, среднее для столбца). Поэтому я ищу...

10
Может ли чисто функциональное решение этой проблемы быть таким же чистым, как императив?

У меня есть упражнение на Python следующим образом: многочлен задается в виде набора коэффициентов, так что степени определяются индексами, например: (9,7,5) означает 9 + 7 * x + 5 * x ^ 2 написать функцию для вычисления ее значения для данного х Так как в последнее время я занимаюсь функциональным...

10
Ведение государства без присваивания

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

10
Как функциональный стиль помогает с насмешливыми зависимостями?

Из интервью с Кентом Беком в недавнем выпуске журнала Java: Бинсток: давайте обсудим микросервисы. Мне кажется, что первое тестирование на микросервисах усложнилось бы в том смысле, что некоторым службам для функционирования потребуется присутствие целого ряда других служб. Ты согласен? Бек:...

9
Какую парадигму использовать для написания шахматного движка?

Если бы вы собирались написать движок для игры в шахматы, какую парадигму программирования вы бы использовали (ООП, процедурный и т. Д.) И почему вы бы выбрали это? Под шахматным движком я подразумеваю часть программы, которая оценивает текущую доску и решает следующий ход компьютера. Я спрашиваю,...

9
Геттеры и сеттеры на функциональных языках

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

9
Лучшая практика - Обтекание, если вокруг вызова функции против добавления раннего выхода, если защита в функции

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

9
Измените мое мышление при подготовке к функциональному программированию

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

9
Что особенного в карри или частичном применении?

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

9
Является ли композиция функций Haskell экземпляром архитектурного шаблона трубы и фильтра?

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

9
Какова связь между «потоком» и чисто функциональным реактивным программированием?

Насколько я понял, Flux - это метод однонаправленного обращения с потоком данных приложения, который изолирует состояние от остальной части программы в автономных «хранилищах» только для чтения, которые могут изменять свое собственное состояние, слушая «действия», которые испускаются взглядами и...

9
Каков ответ функционального программирования на основанные на типе инварианты?

Я знаю, что концепция инвариантов существует в нескольких парадигмах программирования. Например, инварианты цикла актуальны в ОО, функциональном и процедурном программировании. Однако, один очень полезный вид, найденный в ООП, является инвариантом данных определенного типа. Это то, что я называю...

9
Функция, получающая значение из другой функции, считается чистой?

Я пытаюсь найти способ обработки значений переменных по умолчанию при создании функций без побочных эффектов, и в итоге получилось следующее: function getDefaultSeparator() { return ':'; } function process(input, separator) { var separator = separator || getDefaultSeparator(); // Use separator in...

9
Имеет ли смысл применять принципы Redux к ОО-языкам?

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