Публикации по теме 'referential-transparency'


Я думаю, вы неправильно поняли, что такое чистая функция. Начиная с этого:
Я думаю, вы неправильно поняли, что такое чистая функция. Начиная с этого: «Обычно чистая функция — это функция, которая на 100 % выдает один и тот же результат во время выполнения». Это слишком неточно, чтобы так говорить. Я бы скорее связал эту фразу с определением «детерминированной» функции. «Вы можете думать о побочных эффектах как о чем-либо, что делает функцию непредсказуемой». Если я возьму число в качестве входных данных и умножу его на случайный генератор Int, это даст..

Вопросы по теме 'referential-transparency'

Нарушает ли возврат ссылочную прозрачность?
Я читал описание инструмента Scala WartRemover и был сбит с толку одним из их пунктов. В описании сказано следующее: return нарушает ссылочную прозрачность. Выполните рефакторинг для безопасного завершения вычислений. // Won't...
476 просмотров

Как гарантировать ссылочную прозрачность в приложениях F#?
Итак, я пытаюсь изучить FP и пытаюсь понять ссылочную прозрачность и побочные эффекты. Я узнал, что сделать все эффекты явными в системе типов — единственный способ гарантировать ссылочную прозрачность: Идея «в основном функционального...
560 просмотров

Как функциональные языки моделируют побочные эффекты?
Поскольку побочные эффекты нарушают ссылочную прозрачность, разве они не идут вразрез с функциональными языками?
5554 просмотров

Haskell — Как я могу использовать чистые функции внутри функций ввода-вывода?
Как я могу использовать чистые функции внутри функций ввода-вывода? :-/ Например: я читаю файл (функция ввода-вывода) и хочу проанализировать его контекст, строку, используя чистую функцию с ссылочной прозрачностью. Кажется, что такие миры,...
3665 просмотров
schedule 15.08.2022

Является ли Scala's Try прозрачной по ссылкам?
В настоящее время я работаю над презентацией о функциональном программировании и столкнулся со следующей проблемой. Функциональное программирование намеревается отделить «что» от «как», или, точнее, объявление вычисления от его интерпретации. Вот...
264 просмотров

Ссылочная прозрачность с полиморфизмом в Haskell
Скажем, у меня есть функция: f :: Int -> (Rational, Integer) f b = ((toRational b)+1,(toInteger b)+1) Я хочу абстрагироваться от (+1) следующим образом: f :: Int -> (Rational, Integer) f b = (h (toRational b) ,h (toInteger...
386 просмотров

Использование unsafePerformIO во время выполнения интерпретатора языка программирования
Чтобы добавить функции ввода-вывода в интерпретатор языка программирования, написанный на Haskell, у меня есть два варианта: Измените весь интерпретатор, чтобы он работал внутри монады IO. В функциях среды выполнения, которые могут вызываться...
136 просмотров
schedule 07.06.2023

Безопасно ли 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...
94 просмотров

Ссылочная прозрачность в dplyr::filter: создание переменной имени столбца
Основной вопрос (к чему он, кажется, сводится) Как сконструировать вызов rlang::quo с "левой" вместо "правой" стороны выражения, ссылочно прозрачной Взято со страницы справки rlang::quo , это работает quo(foo(!! quo(bar))) #...
79 просмотров
schedule 27.07.2023

Почему лень хорошо сочетается с ссылочной прозрачностью?
Я читал учебник по Haskell (Learn You a Haskell), в котором автор сказал, что лень хорошо сочетается с ссылочной прозрачностью. После дополнительного чтения и некоторого поиска я до сих пор не понимаю, почему. Обратите внимание, что я понимаю, что...
709 просмотров

Что такое ссылочная прозрачность?
Что означает термин ссылочная прозрачность ? Я слышал, что это описывается как «это означает, что вы можете заменить равные равными», но это кажется неадекватным объяснением.
53460 просмотров