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

90
Каков статус текущих реализаций функционального реактивного программирования?

Я пытаюсь визуализировать некоторые простые автоматические физические системы (такие как маятник, манипуляторы и т. Д.) В Haskell. Часто эти системы можно описать уравнениями типа df/dt = c*f(t) + u(t) где u(t)представляет собой своего рода «интеллектуальное управление». Эти системы очень хорошо...

88
Уместно ли функциональное программирование в веб-разработке? [закрыто]

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

88
Почему проще написать компилятор на функциональном языке? [закрыто]

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

88
Прервать преждевременное сгибание

Как лучше всего прервать фолд раньше срока? В качестве упрощенного примера представьте, что я хочу суммировать числа в Iterable, но если я встречу что-то, чего я не ожидаю (скажем, нечетное число), я, возможно, захочу завершить. Это первое приближение def sumEvenNumbers(nums: Iterable[Int]):...

87
Ленивая генерация перестановок

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

87
Что является комбинаторно-логическим эквивалентом интуиционистской теории типов?

Недавно я закончил университетский курс, посвященный Haskell и Agda (зависимый типизированный функциональный язык программирования), и мне было интересно, можно ли заменить в них лямбда-исчисление комбинаторной логикой. В Haskell это кажется возможным с использованием комбинаторов S и K, что...

87
В чем разница между eq ?, eqv ?, equal? ​​И = в схеме?

Интересно, в чем разница между этими операциями в схеме. Я видел похожие вопросы в Stack Overflow, но они касаются Lisp, и нет сравнения между тремя из этих операторов. Я пишу различные типы команд на схеме и получаю следующие результаты: (eq? 5 5) -->#t (eq? 2.5 2.5) -->#f (equal? 2.5 2.5)...

87
Функциональные каналы в Python, такие как%>% от R magrittr

В R (благодаря magrittr ) теперь вы можете выполнять операции с более функциональным синтаксисом конвейера через %>%. Это означает, что вместо кодирования этого: > as.Date("2014-01-01") > as.character((sqrt(12)^2) Вы также можете сделать это: > "2014-01-01" %>% as.Date > 12...

85
Можете ли вы объяснить замыкания (поскольку они относятся к Python)?

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

85
Различие между классами типов MonadPlus, Alternative и Monoid?

Классы типов Haskell стандартной библиотеки MonadPlus, Alternativeи Monoidкаждый предоставляют два метода с практически одинаковой семантикой: Пустое значение: mzero, emptyили mempty. Оператор , a -> a -> aкоторый соединяет значения в классе типов вместе: mplus, <|>или mappend. Все три...

84
Какова мотивация присвоения Scala оценивать Unit, а не присвоенное значение?

Какова мотивация присвоения Scala оценивать Unit, а не присвоенное значение? Обычный шаблон в программировании ввода-вывода - это делать что-то вроде этого: while ((bytesRead = in.read(buffer)) != -1) { ... Но в Scala это невозможно, потому что ... bytesRead = in.read(buffer) .. возвращает Unit, а...

84
Чистые функции: означает ли «отсутствие побочных эффектов» «всегда одинаковый результат при одинаковом вводе»?

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

84
Что такое зависимая типизация?

Может ли кто-нибудь объяснить мне зависимую типизацию? У меня мало опыта работы с Haskell, Cayenne, Epigram или другими функциональными языками, поэтому чем проще термины, которые вы можете использовать, тем больше я буду признателен!...

84
python: получить количество элементов из списка (последовательности) с определенным условием

Предполагая, что у меня есть список с огромным количеством элементов. l = [ 1, 4, 6, 30, 2, ... ] Я хочу получить количество элементов из этого списка, где элемент должен удовлетворять определенному условию. Моя первая мысль была: count = len([i for i in l if my_condition(l)]) Но если...

83
В чем смысл класса Option [T]?

Я не могу понять смысл Option[T]класса в Scala. Я имею в виду, я не вижу никаких преимуществ Noneсверх null. Например, рассмотрим код: object Main{ class Person(name: String, var age: int){ def display = println(name+" "+age) } def getPerson1: Person = { // returns a Person instance or null } def...

83
Схемы рекурсии для чайников?

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