Описание тега referential-transparency
Свойство функции, переменной или выражения, посредством которого выражение может быть заменено его (оцененным) значением, не влияя на поведение программы.
1
ответ
Почему Отложенный фабричный метод имеет возвращаемое значение в контексте F
Я смотрю на cats.effect.concurrent.Deferred и заметил, что все чистые фабричные методы внутри объекта-компаньона возвращают F[Deferred[F, A]], не просто Deferred[F, A] лайк def apply[F[_], A](implicit F: Concurrent[F]): F[Deferred[F, A]] = F.delay(u…
25 фев '19 в 12:23
2
ответа
Если все в языке программирования является выражением, будет ли оно прозрачным по ссылкам?
Я где-то готов, хотя я не смог найти его после долгих поисков, что если какой-нибудь парень создаст новый язык программирования, он будет полностью прозрачным, где все является выражением. Некоторые вопросы о ссылочной прозрачности указывают, что не…
24 июл '13 в 08:20
4
ответа
Что можно назвать эквивалентом ООП "ссылочной прозрачности"?
Насколько я понимаю, термин " ссылочная прозрачность" действительно может применяться только к функциональному коду. Однако вызов метода для объекта в объектно-ориентированном коде может иметь аналогичное свойство: возвращаемое значение метода и сос…
05 июл '10 в 09:44
1
ответ
Clojure: наборы, порядок и чистота
Является (vec #{1 2 3}) гарантированно всегда вернусь [1 3 2] или порядок может быть другим? Я не очень заинтересован в деталях реализации этого, но перехожу от неупорядоченного к упорядоченному в целом, чтобы мои функции были чистыми и легко тестир…
07 янв '19 в 14:48
2
ответа
Нахождение кратчайшего пути между двумя точками на сетке, используя Haskell
Это проблема, которую я могу легко решить нефункциональным образом. Но решение этого вопроса на Хаскеле доставляет мне большие проблемы. Я, будучи неопытным, когда дело доходит до функционального программирования, безусловно, является причиной. Эта …
15 мар '10 в 23:09
6
ответов
Что произойдет, если вы скомпилируете программу, которая не требует ввода? (Вопросы чистоты Haskell IO (снова))
putStrLn при вызове с любыми аргументами всегда будет возвращать значение типа IO (), Я согласен, что это чисто, я могу справиться с этим. Но действительно ли это прозрачно? Я так думаю, потому что для любого данного ввода вы можете заменить вызов ф…
05 дек '11 в 08:07
1
ответ
Ссылочная прозрачность
Что означает термин "ненаблюдаемый", когда он используется в контексте с термином "относительная прозрачность" в функциональном программировании?
31 янв '11 в 05:11
0
ответов
Безопасно ли использовать unsafeThaw индексируемый распакованный вектор?
Я только что опубликовал этот код: import qualified Data.Vector.Unboxed as VU import qualified Data.Vector.Algorithms.Intro as VAlgo argSort :: (Ord a, VU.Unbox a) => VU.Vector a -> VU.Vector Int argSort xs = VU.map fst $ VU.create $ do xsi &…
13 ноя '16 в 20:21
4
ответа
Рекурсивно модифицирующие части структуры данных в Haskell
Привет, ребята. Я новичок в Haskell, я хотел бы создать программу на Haskell, которая могла бы применять законы Деморгана к логическим выражениям. Проблема в том, что я не могу изменить данное выражение на новое (после применения законов Деморгана) …
31 май '11 в 21:08
1
ответ
Ссылочная прозрачность в dplyr::filter: изменение имени столбца
Основной вопрос (к чему все сводится) Как мне сконструировать звонок rlang::quo с "левой" вместо "правой" части выражения, являющейся ссылочно прозрачным Взято со страницы справки rlang::quo, это работает quo(foo(!! quo(bar))) # <quosure: global&…
11 окт '17 в 08:50
4
ответа
Как функциональные языки моделируют побочные эффекты?
Поскольку побочные эффекты нарушают прозрачность ссылок, не противоречат ли они функциональным языкам?
03 окт '10 в 15:31
9
ответов
Существуют ли чисто функциональные схемы или лиспы?
Я поиграл с несколькими функциональными языками программирования и мне действительно понравился синтаксис s-expr, используемый Лиспсом (в частности, Схемой). Я также вижу преимущества работы на чисто функциональном языке. Следовательно: Существуют л…
23 май '10 в 01:01
3
ответа
Почему лень хорошо сочетается с прозрачностью ссылок?
Я читал учебник по Haskell (Learn You a Haskell), в котором автор сказал, что лень хорошо сочетается с прозрачностью ссылок. После дополнительного чтения и некоторых поисков я все еще не понимаю, почему. Обратите внимание, что я понимаю, что хорошег…
05 окт '10 в 14:26
18
ответов
Что такое ссылочная прозрачность?
Что означает термин ссылочная прозрачность? Я слышал, что это описывается как "это означает, что вы можете заменить равные равными", но это выглядит как неадекватное объяснение.
17 окт '08 в 01:27
7
ответов
Вывод типа мешает ссылочной прозрачности
Какое точное обещание / гарантию предоставляет язык Haskell в отношении прозрачности ссылок? По крайней мере, в отчете на Haskell это понятие не упоминается. Рассмотрим выражение (7^7^7`mod`5`mod`2) И я хочу знать, равно ли это выражение 1. Для моей…
19 ноя '14 в 14:56
2
ответа
Как вставить O(log(n)) в Data.Set?
Просматривая документы Data.SetЯ видел, что вставка элемента в дерево упоминается как O(log (n)). Тем не менее, я бы интуитивно ожидал, что он будет O(n * log (n)) (или, может быть, O(n)?), Поскольку прозрачность ссылок требует создания полной копии…
04 янв '13 в 22:23
0
ответов
Алгоритм определения преимуществ функции запоминания
проблема Допустим, у меня есть некоторый язык программирования с только ссылочно-прозрачными функциями. Хорошо известно, что любая из этих функций может быть запомнена. Однако не всегда стоит запоминать функции с точки зрения времени или пространств…
22 июн '16 в 05:24
2
ответа
Как вы соединяетесь с API на функционально чистом языке?
Мне просто интересно узнать, как на чисто функциональном языке вы можете подключиться с помощью API, не вызывая побочных эффектов?
09 май '12 в 17:45
3
ответа
Есть ли какая-то польза от переноса API Haskell Edison и Core на F#?
Модули Edison API и Core являются реализацией чисто функциональных структур данных на Haskell. Достаточно ли охватывают структуры данных F# и нативные.Net варианты использования в Edison API и Core? Будет ли какая-то польза от попыток перенести моду…
21 окт '09 в 18:11
0
ответов
Попытка нарушить ссылочную прозрачность в Excel UDF
Я делаю несколько тестов, чтобы понять, что вы можете и не можете делать с макросами Excel. Ситуация такова, что я хочу вызвать следующий UDF из ячейки и дать ему оценку "hotdawg", а также побочный эффект установки ячейки D13 в значение "SIDE EFFECT…
14 май '13 в 05:19