Вопросы с тегом «lazy-evaluation»

Ленивая оценка относится к множеству концепций, которые стремятся избежать оценки выражения, если его значение не требуется, и поделиться результатами оценки выражения между всеми его использованиями, так что ни одно выражение не нужно оценивать более одного раза.

5
Что плохого в Lazy I / O?
Обычно я слышал, что производственный код не должен использовать ленивый ввод-вывод. У меня вопрос, почему? Можно ли когда-нибудь использовать ленивый ввод-вывод вне игры? И что делает альтернативы (например, счетчики) лучше?

6
withFilter вместо filter
Всегда ли эффективнее использовать withFilter вместо filter при последующем применении таких функций, как карта, плоская карта и т. Д.? Почему поддерживаются только map, flatmap и foreach? (Ожидаемые функции типа forall / также существуют)

3
Параллельные бесконечные потоки Java исчерпывают память
Я пытаюсь понять, почему следующая Java-программа дает OutOfMemoryError, а соответствующая .parallel()- нет. System.out.println(Stream .iterate(1, i -> i+1) .parallel() .flatMap(n -> Stream.iterate(n, i -> i+n)) .mapToInt(Integer::intValue) .limit(100_000_000) .sum() ); У меня есть два вопроса: Каков предполагаемый результат этой программы? Без .parallel()этого кажется, что это просто вывод, sum(1+2+3+...)что означает, что он просто …

1
Какие правила существуют для функции a -> (), вычисляемой в Haskell?
Как и в заголовке: какие гарантии существуют для функции, возвращающей единицу функции Haskell, которая будет оценена? Можно было бы подумать, что в таком случае нет необходимости выполнять какую-либо оценку, компилятор может заменить все такие вызовы непосредственным ()значением, если нет явных запросов на строгость, и в этом случае код может решить, …

2
Расчет числа е с использованием Raku
Я пытаюсь вычислить постоянную е (число Эйлера Эйка ), вычисляя формулу Чтобы вычислить факториал и деление за один снимок, я написал это: my @e = 1, { state $a=1; 1 / ($_ * $a++) } ... *; say reduce * + * , @e[^10]; Но это не сработало. Как это …

5
Как сделать этот алгоритм более ленивым, не повторяя себя?
(Вдохновлен моим ответом на этот вопрос .) Рассмотрим этот код (он должен найти самый большой элемент, который меньше или равен заданному входу): data TreeMap v = Leaf | Node Integer v (TreeMap v) (TreeMap v) deriving (Show, Read, Eq, Ord) closestLess :: Integer -> TreeMap v -> Maybe (Integer, v) …
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.