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

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

17
Как вы можете сделать что-нибудь полезное без изменяемого состояния?
В последнее время я много читал о функциональном программировании, и я могу понять большую его часть, но единственное, что я просто не могу обернуть, это кодирование без сохранения состояния. Мне кажется, что упрощение программирования за счет удаления изменяемого состояния похоже на «упрощение» автомобиля путем удаления приборной панели: готовый продукт может …

8
Как использовать underscore.js в качестве движка шаблонов?
Я пытаюсь узнать о новых применениях JavaScript как серверного языка и как функционального языка. Несколько дней назад я слышал о node.js и Express Framework. Затем я увидел файл underscore.js как набор служебных функций. Я видел этот вопрос на stackoverflow . В нем говорится, что мы можем использовать underscore.js в качестве …

4
Что такое «лифтинг» в Scala?
Иногда, когда я читаю статьи в экосистеме Scala, я читаю термин «поднятие» / «поднятие». К сожалению, это не объясняется, что именно это означает. Я провел некоторое исследование, и кажется, что лифтинг как-то связан с функциональными ценностями или чем-то в этом роде, но я не смог найти текст, который объясняет, что …

17
В чем разница между процедурным программированием и функциональным программированием? [закрыто]
Закрыто . Этот вопрос основан на мнении . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы ответить на него фактами и цитатами, отредактировав этот пост . Закрыто в прошлом году . Улучшить этот вопрос Я читал статьи в Википедии как о процедурном программировании, так …

15
Javascript уменьшить на массив объектов
Скажем, я хочу, чтобы сумма a.xдля каждого элемента в arr. arr = [{x:1},{x:2},{x:4}] arr.reduce(function(a,b){return a.x + b.x}) >> NaN У меня есть основания полагать, что топор в какой-то момент не определен. Следующее работает отлично arr = [1,2,4] arr.reduce(function(a,b){return a + b}) >> 7 Что я делаю не так в первом …

11
Лучшее объяснение для языков без нуля
Время от времени, когда программисты жалуются на нулевые ошибки / исключения, кто-то спрашивает, что мы делаем без нуля. У меня есть некоторое базовое представление о крутизне типов опций, но я не обладаю знаниями или языковыми навыками, чтобы лучше всего это выразить. Что является отличным объяснением следующего, написанного так, чтобы это …

17
Что такое функтор в функциональном программировании?
Я встречал термин «Functor» несколько раз, читая различные статьи о функциональном программировании, но авторы обычно предполагают, что читатель уже понимает этот термин. Просмотр в Интернете предоставил либо чрезмерно технические описания (см. Статью в Википедии ), либо невероятно расплывчатые описания (см. Раздел «Функторы» на этом веб-сайте ocaml-учебника ). Может кто-нибудь любезно …

16
Javascript-эквивалент функции zip в Python
Есть ли javascript-эквивалент функции zip в Python? То есть, учитывая несколько массивов одинаковой длины, создайте массив пар. Например, если у меня есть три массива, которые выглядят так: var array1 = [1, 2, 3]; var array2 = ['a','b','c']; var array3 = [4, 5, 6]; Выходной массив должен быть: var output array:[[1,'a',4], …

17
Массив массивов PHP, включающий ключи
Есть ли способ сделать что-то вроде этого: $test_array = array("first_key" => "first_value", "second_key" => "second_value"); var_dump(array_map(function($a, $b) { return "$a loves $b"; }, array_keys($test_array), array_values($test_array))); Но вместо вызова array_keysи array_valuesпрямой передачи $test_arrayпеременной? Желаемый результат: array(2) { [0]=> string(27) "first_key loves first_value" [1]=> string(29) "second_key loves second_value" }

6
Список строк в одну строку
Допустим, у вас есть: List<string> los = new List<string>(); В этом сумасшедшем функциональном мире, в котором мы живем в эти дни, один из них был бы лучшим для создания одной строки путем объединения этих: String.Join(String.Empty, los.ToArray()); StringBuilder builder = new StringBuilder(); los.ForEach(s => builder.Append(s)); string disp = los.Aggregate<string>((a, b) => …

11
Почему неизменность так важна (или необходима) в JavaScript?
В настоящее время я работаю над платформами React JS и React Native . На полпути я наткнулся на Immutable или библиотеку Immutable-JS , когда читал о реализации Facebook в Flux и Redux. Вопрос в том, почему неизменность так важна? Что не так в мутирующих объектах? Разве это не упрощает ситуацию? …

13
Существует ли методология разработки программного обеспечения для функционального программирования? [закрыто]
Закрыто . Этот вопрос должен быть более сфокусированным . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он был сосредоточен только на одной проблеме, отредактировав этот пост . Закрыто 3 года назад . Улучшить этот вопрос Инженерия программного обеспечения в том виде, в каком …

6
Python: зачем нужен functools.partial?
Частичное приложение - это круто. Какие функции functools.partialвы не можете получить с помощью лямбда-выражений? >>> sum = lambda x, y : x + y >>> sum(1, 2) 3 >>> incr = lambda y : sum(1, y) >>> incr(2) 3 >>> def sum2(x, y): return x + y >>> incr2 = …

11
Почему еще не занято функциональное программирование?
Locked . Этот вопрос и его ответы заблокированы, потому что вопрос не по теме, но имеет историческое значение. В настоящее время он не принимает новые ответы или взаимодействия. Я читал некоторые тексты о декларативном / функциональном программировании (языках), пробовал Haskell, а также сам написал. Из того, что я видел, функциональное …

7
разница между foldLeft и reduLeft в Scala
Я узнал основную разницу между foldLeftиreduceLeft foldLeft: начальное значение должно быть передано reduceLeft: принимает первый элемент коллекции в качестве начального значения выдает исключение, если коллекция пуста Есть ли другая разница? Есть какая-то конкретная причина иметь два метода с похожей функциональностью?

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.