Это было бы полезно для генетического программирования, которое обычно использует подмножество Лиспа в качестве представления программ. Я нашел в сети нечто под названием Liskell (синтаксис Lisp, Haskell внутри), но ...
Я пытался следовать объяснениям Бьярна Страуступса относительно шаблона функции. Я специально играл с взаимозаменяемостью указателей-c-функций, функторов, лямбда-выражений и указателей-членов. Учитывая ...
Я новичок в Common Lisp. В Haskell вы можете сделать что-то вроде этого: Prelude> takeWhile (<= 10) [k | k <- [1 ..]]
[1,2,3,4,5,6,7,8,9,10] Возможно ли это в Лиспе? Не обязательно ...
Я изучал программирование на Java, затем пытался изучать один язык программирования в год, вторым был C ++, затем Python. Он пришел, чтобы изучить следующий, я искал что-то новое, я выбрал Scala, потому что он ...
I wrote a function in haskell that takes a few parameters like Word32, String (ignore currying) and outputs IO Word32. Now, this is a function in the true sense: for the same inputs, the output will ...
Я думаю, разница между разделенными и неограниченными продолжениями похожа на разницу между вызовом и переходом. Если мы вызовем продолжение с разделителями, оно вернется к вызывающему после завершения. ...
Я прочитал в книге: «Источники программирования», в интервью с Гвидо Ван Россумом говорится: Более фундаментальное свойство Python разделяет с Lisp (тоже не функциональным языком!) заключается в том, что ...
Это может быть глупый и очевидный вопрос, но почему примеры алгоритмов доступа к списку реализованы в линейном времени? Я понимаю, что в большинстве приложений используется просмотр списков, а не доступ ...
Я уверен, что это вопрос для очень новичков в лиспе, так как я только изучаю язык. в clisp есть функция, называемая count. Она подсчитывает, сколько раз данный атом появляется в списке. What I '...
как можно эмулировать функциональное программирование на java, в частности, делать такие вещи, как сопоставить функцию с коллекцией элементов? map (func, new String [] {"a", "b", "c"}); какой наименее подробный & ...
In a pure functional language with lazy semantics (such as Haskell), results of computations are memoized so that further evaluations of a function with the same inputs do not recompute the value but ...
Just reading the (german) Wiki-Article about Model-Driven SW-Development (MDSD). Summing up the Wiki-Definition: MDSD is about the DRY-Principle (Dont repeat youself)
MDSD is about the Design of ...
I ' Мне нравится составлять функции определенным образом. Пожалуйста, рассмотрите эти 2 функции в псевдокоде (не F #) F1 = x + y
F2 = F1 * 10 // обратите внимание, что я не указывал аргументы для F1, 'обратное карри' из-за отсутствия ...
Можно ли в Haskell написать функцию с сигнатурой, которая может принимать два разных (хотя и похожих) типа данных, и работать по-разному в зависимости от того, какой тип передан? Пример ...
Предположим, я определяю функцию глобально: (defun x (y) (1+ y)) ;; Изменить: мой первый пример был слишком сложным. Можно ли «принудить» функцию x к списку, например: (x (y) (1+ y)) Спасибо в ...
Почему Clojure, несмотря на такой упор на функциональную парадигму, а не использование монады Maybe / Option для представления необязательных значений? Использование Option довольно широко распространено в Scala, функциональное программирование ...
Практично ли реализовать объектную модель в функциональном стиле? Одна проблема, в которой ООП, кажется, преуспевает, - это описание объектных моделей. Например, HTML DOM - это сложный, отслеживающий состояние ...
На Hackage есть много различных библиотек преобразователей монад. Некоторым кажется больше внимания, чем другим. Назовем несколько: mtl (текущая версия по какой-то причине зависит от преобразователей), ...
Обычный подход к написанию функций в R (насколько я понимаю) заключается в избежать побочных эффектов и вернуть значение из функции. содержит <- function (x) {x_squared <- x ^ 2 return (x_squared)
}
...
В языке программирования Clojure, почему этот код проходит с честью? (let [r (range 1e9)] [(first r) (last r)]) Пока этот не работает: (let [r (range 1e9)] [(last r) (first r)]) Я знаю, что это так. ..
Я смотрю на функциональную Java и не понимаю, что такое P1 является. Может ли кто-нибудь объяснить и / или привести пример? (предыстория: я знаю, что такое каррирование и замыкание)
Вопрос говорит само за себя. Я знаю, что монада (Scala) выглядит так: trait Monad [M [_]] {def pure [A] (a: A): M [A] def bind [A, B] (ma: M [A], f: A => M [B]): M [B]
} Что означает Монада ...
На первый взгляд, существуют очевидные различия между двумя видами «классов». Однако я считаю, что есть больше общего: у обоих есть разные типы конструкторов.
Оба определяют группу ...
Я только что получил свою копию Expert F # 2.0 и наткнулся на это утверждение, которое меня несколько удивило: например, при необходимости вы можете использовать побочные эффекты для личных данных структуры, размещенные в ...
Я читал о Haskell, и мне сложно понять, как определения функций обрабатываются на этом языке. Скажем, я определяю функцию суммы: let sum xy = x + y, если я запрашиваю ...
В настоящее время я играю с разработкой Scala, но мне нужно интегрироваться с такими библиотеками, как box2d, для обработки физики . Проблема в том, что это требует зависимости от внешней библиотеки, которая ...
Я всегда думал, что Haskell будет выполнять своего рода автоматическое интеллектуальное запоминание. Например, наивная реализация Фибоначчи fib 0 = 0
фиб 1 = 1
fib n = fib (n-2) + fib (n-1) будет быстрым, потому что ...