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

143
Ошибка компилятора Swift: «Слишком сложное выражение» при конкатенации строк

Я нахожу это забавным больше всего на свете. Я исправил это, но я задаюсь вопросом о причине. Здесь ошибка: DataManager.swift:51:90: Expression was too complex to be solved in reasonable time; consider breaking up the expression into distinct sub-expressions. Почему это жалуется? Кажется, это одно...

138
Что такое «лифтинг» в Хаскеле?

Я не понимаю, что такое «подъем». Должен ли я сначала понять монады, прежде чем понять, что такое «лифт»? (Я тоже совершенно не осведомлен о монадах :) Или кто-то может объяснить мне это простыми...

135
Является ли Javascript функциональным языком программирования?

Javascript заслуживает того, чтобы его называли функциональным языком программирования только потому, что функции являются объектами первого класса, существуют замыкания и функции более высокого порядка? Я думаю, что главное, чего ему не хватает, - это Pure Functions, и он не «чувствует» себя как...

132
Преимущества программирования без сохранения состояния?

Недавно я изучал функциональное программирование (в частности, Haskell, но я также прошел через учебные пособия по Lisp и Erlang). Хотя я нашел эти концепции очень поучительными, я все еще не вижу практической стороны концепции «отсутствия побочных эффектов». Каковы практические преимущества этого?...

129
Любая разница между функцией первого класса и функцией высшего порядка

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

128
Что такое «сопоставление с образцом» в функциональных языках?

Я читаю о функциональном программировании и заметил, что сопоставление с образцом упоминается во многих статьях как одна из основных функций функциональных языков. Может ли кто-нибудь объяснить разработчику Java / C ++ / JavaScript, что это...

127
Использование карты Python и других функциональных инструментов

Это довольно странно, но я пытаюсь изучить / понять функциональное программирование на Python. Следующий код: foos = [1.0,2.0,3.0,4.0,5.0] bars = [1,2,3] def maptest(foo, bar): print foo, bar map(maptest, foos, bars) производит: 1.0 1 2.0 2 3.0 3 4.0 None 5.0 None В. Есть ли способ использовать...

126
Почему в Go нет дженериков?

Отказ от ответственности: я играл в Go всего один день, так что есть хороший шанс, что я многое пропустил. Кто-нибудь знает, почему в Go нет реальной поддержки generics / templates / whatsInAName? Итак, есть общий map, но он предоставляется компилятором, а программист на Go не может написать свою...

125
Зачем мне изучать Лисп? [закрыто]

В настоящее время этот вопрос не подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, потребует дебатов, аргументов, опросов или расширенного обсуждения. Если вы считаете, что этот вопрос можно...

125
Как вы представляете граф в Haskell?

Достаточно просто представить дерево или список в haskell, используя алгебраические типы данных. Но как бы вы представили график типографически? Похоже, вам нужны указатели. Я предполагаю, что у вас может быть что-то вроде type Nodetag = String type Neighbours = [Nodetag] data Node a = Node a...

124
Что такое Хиндли-Милнер?

Я столкнулся с этим термином Хиндли-Милнер , и я не уверен, что понимаю, что он означает. Я прочитал следующие сообщения: Стив Йегге - Динамические языки наносят ответный удар Стив Егге - Проблема Пиноккио Дэниел Спивак - Что такое Хиндли-Милнер? (а почему это круто?) Но для этого термина нет...

123
Полезный код, использующий reduce ()? [закрыто]

Закрыто . Этот вопрос основан на мнении . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы на него можно было ответить с помощью фактов и цитат, отредактировав этот пост . Закрыт 4 года назад . Уточните этот вопрос Есть ли у кого-нибудь здесь полезный...

122
Разногласия между базами данных и функциональным программированием?

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

121
Руководство по Haskell для начинающих? [закрыто]

В его нынешнем виде этот вопрос не подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, повлечет за собой дебаты, аргументы, опросы или расширенное обсуждение. Если вы считаете, что этот вопрос можно...

121
В чем разница между свертыванием и уменьшением?

Пытался изучить F #, но запутался, пытаясь различить свертку и свертку . Кажется, что Fold делает то же самое, но принимает дополнительный параметр. Есть ли законная причина для существования этих двух функций или они предназначены для людей с разным опытом? (Например: строка и строка в C #) Вот...

119
Чем полезна ленивая оценка?

Я давно задавался вопросом, чем полезна ленивая оценка. Мне еще предстоит, чтобы кто-нибудь объяснил мне разумным образом; в основном все сводится к «поверь мне». Примечание: я не имею в виду мемоизацию....

119
Что такое «питонический» эквивалент функции «складки» из функционального программирования?

Каков наиболее идиоматический способ добиться в Haskell чего-то вроде следующего: foldl (+) 0 [1,2,3,4,5] --> 15 Или его эквивалент в Ruby: [1,2,3,4,5].inject(0) {|m,x| m + x} #> 15 Очевидно, Python предоставляет reduceфункцию, которая является реализацией fold, точно так же, как указано...

117
Это чистая функция?

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

114
По-настоящему понимая разницу между процедурным и функциональным

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