Лучшие functional-programming вопросы ИТ разработчиков

  • 63 голосов
  • 4 ответа
  • 0 просмотров
4 ответа

Что представляет собой складку для типов, отличных от списка?

Рассмотрим односвязный список. Это выглядит примерно так data List x = Node x (List x) | EndЕстественно определить функцию складывания, такую как reduce :: (x -> y -> y) -> y -> List x -> yВ некотором смыслеreduce f x0 заменяет каждыйNode с ...

Задан 07 May 2013, 18:53 от MathematicalOrchid
  • 14 голосов
  • 0 ответов
  • 0 просмотров
0 ответов

Scala: фильтрация по типу

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

Задан 26 Aug 2010, 05:08 от PythonPower
  • 6 голосов
  • 3 ответа
  • 0 просмотров
3 ответа

Вау снова! Это круто. Спасибо, что нашли время, чтобы написать это. Хотя это не так много строк кода, он представляет собой довольно значительный набор методов. Моя следующая задача - обдумать, как добавить в конвейер ленивый декартовой продукт ...

я есть список животных: let animals = ["bear", "dog", "cat"]И несколько способов преобразовать этот список: typealias Transform = (String) -> [String] let containsA: Transform = { $0.contains("a") ? [$0] : [] } let plural: Transform = { [$0 + ...

Задан 27 Jan 2019, 08:30 от Adahus
  • 21 голос
  • 1 ответ
  • 0 просмотров
1 ответ

Почему Funcs не принимает более 16 аргументов?

Поскольку Javascript - это язык, на котором я наиболее опытен, я знаком с использованием функций в качестве первоклассных объектов. Я думал, что C # не хватает этой функции, но потом я услышал оFunc а такжеAction а такжеdelegateЯ думаю, что это ...

Задан 27 Sep 2011, 03:52 от Peter Olson
  • 11 голосов
  • 5 ответов
  • 0 просмотров
5 ответов

Советы по обучению «Как думать функционально»?

Как новичок в функциональных языках (я начал трогать Erlang пару недель назад - первый функциональный язык, который я мог заполучить).Я начал писать небольши...

Задан 10 Oct 2009, 18:39 от chen
  • 6 голосов
  • 4 ответа
  • 0 просмотров
4 ответа

хорошая мысль, лучше повторить эту работу

мне нужно предоставить постоянное значение для функции, которую я сопоставляю с элементами последовательности, есть ли лучший способ, чем то, что я делаю в настоящее время: (map my-function my-sequence (cycle [my-constant-value]))где ...

Задан 04 Mar 2011, 05:20 от Hendekagon
  • 9 голосов
  • 5 ответов
  • 0 просмотров
5 ответов

Нужна ли рекурсия в скале?

В учебном курсе по Scralera большинство примеров используют нисходящие итерации. Частично, как я вижу, итерации используются, чтобы избежать циклов for / while. Я из C ++ и чувствую себя немного смущенным по этому поводу. Итерация выбрана для ...

Задан 05 Sep 2013, 21:03 от galaapples
  • 5 голосов
  • 3 ответа
  • 0 просмотров
3 ответа

Плавный способ использования Java-интерфейса Function <A, R> из scala?

Здесь на работе большинство людей используют Java, а я работаю со Scala. Мы решили собрать некоторые общие классы в библиотеке, которые будут написаны на Java. Теперь я хочу добавить псевдо-функциональное программирование в библиотеку, взгляните ...

Задан 20 Sep 2011, 06:52 от Michael J. Barber
  • 170 голосов
  • 0 ответов
  • 0 просмотров
0 ответов

Если вы в порядке с ES6:

ли javascript-эквивалент функции zip в Python? То есть, учитывая несколько массивов одинаковой длины, создайте массив пар. Например, если у меня есть три массива, которые выглядят так: var array1 = [1, 2, 3]; var array2 = ['a','b','c']; var ...

Задан 31 Jan 2011, 22:08 от pq.
  • 10 голосов
  • 3 ответа
  • 0 просмотров
3 ответа

Динамическое программирование на F #

Какой самый элегантный способ реализовать алгоритмы динамического программирования, которые решаютпроблемы с перекрывающимися подзадачами [http://en.wikipedia.org/wiki/Overlapping_subproblem]? В императивном программировании обычно создается ...

Задан 02 Nov 2011, 18:41 от Grzenio
  • 10 голосов
  • 0 ответов
  • 0 просмотров
0 ответов

Любой метод функционального программирования обхода вложенного словаря?

Я пытаюсь найти лучший способ реализовать это: d = {"a": {"b": {"c": 4}}} l = ["a", "b", "c"] for x in l: d = d[x] print (d) # 4Я изучаю функциональное программирование, поэтому я просто пробую случайный пример, который приходит мне в голову :)

Задан 02 Dec 2013, 09:29 от Ankit Solanki
  • 10 голосов
  • 3 ответа
  • 0 просмотров
3 ответа

Что особенного в ключевом слове «возврат»

Когда мне показалось, что я понимаю, для чего нужен возврат в Haskell, я попытался поиграть с разными альтернативами, и кажется, что возврат можно не только использовать в любом месте цепочки монад, но и полностью исключить. *Main> Just 9 >>= \y ...

Задан 10 Mar 2013, 15:31 от Maksee
  • 34 голосов
  • 4 ответа
  • 0 просмотров
4 ответа

Подсчет количества элементов в списке, которые удовлетворяют данному предикату

Есть ли в стандартной библиотеке Haskell функция, которая предоставляет список и предикат, возвращает число элементов, удовлетворяющих этому предикату? Что-то вроде с типом(a -> Bool) -> [a] -> Int, Мой поиск в Google не дал ничего интересного. В ...

Задан 30 Jan 2012, 20:49 от missingfaktor
  • 8 голосов
  • 4 ответа
  • 0 просмотров
4 ответа

Как чисто функциональные компиляторы аннотируют AST информацией о типе?

На этапе синтаксического анализа императивный компилятор может построить AST из узлов, которые уже содержат

Задан 12 Apr 2015, 09:55 от fredoverflow
  • 24 голосов
  • 7 ответов
  • 0 просмотров
7 ответов

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

ользую некоторые функциональные вещи в C # и продолжаю зацикливаться на том факте, чтоList.Add не возвращает обновленный список. В общем, я хотел бы вызвать функцию для объекта, а затем вернуть обновленный объект. Например, было бы здорово, ...

Задан 18 Aug 2011, 21:37 от Brian Gordon
  • 5 голосов
  • ответ
  • 0 просмотров
ответ

Требуется очень общая функция argmax в C ++

Я испорченный программист Python, который привык вычислятьArgmax [https://en.wikipedia.org/wiki/Argmax]изcollection по отношению к некоторымfunction с участием max(collection, key=function)Например: l = [1,43,10,17] a = max(l, key=lambda x: -1 ...

Задан 07 Jan 2013, 16:17 от clstaudt
  • 22 голосов
  • 0 ответов
  • 0 просмотров
0 ответов

Двумерная молния

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

Задан 18 Jan 2012, 04:05 от deontologician
  • 55 голосов
  • 5 ответов
  • 0 просмотров
5 ответов

Как я должен думать о классах продуктов Scala?

Посылка &quot;Ла Скала» имеет несколько классов с именами Product, Product1, Product2 и т. д., вплоть до Product22.Описания этих классов, безусловно, точны. ...

Задан 19 Aug 2009, 16:48 от mtnygard
  • 46 голосов
  • 0 ответов
  • 0 просмотров
0 ответов

Есть ли проблемы, которые нельзя написать с помощью хвостовой рекурсии?

Хвостовая рекурсия является важной стратегией оптимизации производительности в функциональных языках, поскольку она позволяет рекурсивным вызовам использовать постоянный стек (а не O (n)). Существуют ли проблемы, которые просто не могут быть ...

Задан 11 Dec 2009, 15:13 от ctford
  • 11 голосов
  • 0 ответов
  • 0 просмотров
0 ответов

Применить список функций для объекта в Python

Есть ли какой-нибудь чистый способ применить список функций к объекту в Python без лямбда-выражения или понимания списка? Как выражение на Haskell:

Задан 31 Jul 2012, 13:06 от Bill the LizardSlimJim
  • 14 голосов
  • 4 ответа
  • 0 просмотров
4 ответа

Удаление синтаксического сахара: понимание списка в Haskell

Могу ли я осмыслить понимание списка в этом выражении: [(i,j) | i <- [1..4], j <- [i+1..4]]Это вывод: [(1,2),(1,3),(1,4),(2,3),(2,4),(3,4)]Как я могу с помощью карты, фильтра и так далее написать этот фрагмент кода? редактировать Вот ...

Задан 06 Nov 2011, 17:52 от Carlochess
  • 55 голосов
  • 2 ответа
  • 0 просмотров
2 ответа

Поддержание сложного состояния в Хаскеле

Предположим, вы строите довольно большую симуляцию в Haskell. Существует много различных типов объектов, атрибуты которых обновляются по мере симуляции. Скажем для примера, что ваши сущности называются Обезьянами, Слонами, Медведями и т. ...

Задан 18 Mar 2013, 00:14 от rlkw1024
  • 18 голосов
  • 0 ответов
  • 0 просмотров
0 ответов

Моделирование / документирование функциональных программ

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

Задан 05 Jan 2010, 11:03 от Jim Downing
  • 12 голосов
  • 0 ответов
  • 0 просмотров
0 ответов

Scala сгладить список

Я хочу написать функцию, которая отображает список. object Flat { def flatten[T](list: List[T]): List[T] = list match { case Nil => Nil case head :: Nil => List(head) case head :: tail => (head match { case l: List[T] => flatten(l) case i => ...

Задан 24 Oct 2012, 23:49 от Lux Weidling
  • 24 голосов
  • 2 ответа
  • 0 просмотров
2 ответа

Структура данных на молнии с более чем одним курсором

Структура данных Zipper хороша, когда нужно пройтись по дереву и сохранить текущую позицию, но какую структуру данных следует использовать, если они хотят от...

Задан 08 Aug 2010, 23:54 от Peter Jankuliak
  • 23 голосов
  • 0 ответов
  • 0 просмотров
0 ответов

Scala IO monad: какой смысл?

Недавно я смотрел видео о том, как можно придумать монаду IO, разговор был в скале. Мне действительно интересно, какой смысл иметь функции, возвращающие IO [A] из них. Лямбда-выражения, заключенные в объекте ввода-вывода, - это то, ...

Задан 30 Oct 2013, 15:44 от Blair Davidson
  • 1 голос
  • 0 ответов
  • 0 просмотров
0 ответов

Инициализация val в последнее время

Можно ли сделать это в Scala, используя только val: class MyClass { private val myVal1: MyClass2 //.....????? what should be here? def myMethod1(param1: Int) = { myVal1 = new MyClass2(param1) //.... // some code.... } }Идея в том, что я не могу ...

Задан 18 Jun 2013, 05:48 от Alan Coromano
  • -2 голосов
  • 0 ответов
  • 0 просмотров
0 ответов

Готово, я закончил с этим кодом:

я есть массив ниже, и у каждого элемента есть другой массив с именем FunctionalityChildren, мне нужно найти уникальный объект, который содержит свойствоActionFullравно переменной, например, «/ бюджет / распределение» или «/ бюджет» let bigArray ...

Задан 21 May 2018, 12:30 от felipe muner
  • 46 голосов
  • 15 ответов
  • 0 просмотров
15 ответов

Неизменяемый объектный шаблон в C # - как вы думаете? [закрыто]

В течение нескольких проектов я разработал шаблон для создания неизменяемых (только для чтения) объектов и графов неизменяемых объектов. Преимущество неизмен...

Задан 04 Nov 2008, 21:49 от Lars Fastrup
  • 2 голосов
  • 2 ответа
  • 0 просмотров
2 ответа

Получите Eq и Show для псевдонима типа в Haskell

У меня есть следующий псевдоним типа data Bindable = Const Value | Variable Location | Func Function | Proc deriving (Eq, Show) type Function = Argument -> Store -> Valueно компилятор выдает ошибку No instance for (Show Function) arising from ...

Задан 22 Feb 2013, 02:07 от K''
  • 7 голосов
  • 0 ответов
  • 0 просмотров
0 ответов

Да, Extempore или моя реализация доступна для Seq с дубликатами, например Список (1,1,1,2,2,2)

исал генератор перестановок для списков Scala, который генерирует все перестановки данного списка. До сих пор у меня есть следующее на основеэта реализация Haskell [http://www.haskell.org/pipermail/haskell/2006-July/018298.html](и я думаю, ...

Задан 04 Jan 2011, 17:54 от Ken Bloom
Page 1 of 16
1 2 3 4 5