Tag: ленивая оценка

Передача имени переменной в функцию из R

Я заметил, что довольно много пакетов позволяют передавать имена символов, которые могут быть даже недействительными в контексте вызова функции. Мне интересно, как это работает и как я могу использовать его в своем собственном коде? Вот пример с ggplot2: a <- data.frame(x=1:10,y=1:10) library(ggplot2) qplot(data=a,x=x,y=y) x и y не существуют в моем пространстве имен, но ggplot понимает, […]

`def` vs` val` vs `lazy val` в Scala

Правильно ли я понимаю, что def оценивается каждый раз, когда он получает доступ lazy val оценивается после его доступа val оценивается после попадания в область выполнения?

Почему ленивая оценка полезна?

Я давно задавался вопросом, почему ленивая оценка полезна. Мне еще никто не объяснил мне таким образом, который имеет смысл; в основном он заканчивается, чтобы «доверять мне». Примечание. Я не имею в виду воспоминания.

Недостаточная производительность Haskell foldl с (++)

У меня есть этот код: import Data.List newList_bad lst = foldl’ (\acc x -> acc ++ [x*2]) [] lst newList_good lst = foldl’ (\acc x -> x*2 : acc) [] lst Эти функции возвращают списки с каждым элементом, умноженным на 2: *Main> newList_bad [1..10] [2,4,6,8,10,12,14,16,18,20] *Main> newList_good [1..10] [20,18,16,14,12,10,8,6,4,2] В ghci: *Main> sum $ newList_bad […]

Альтернатива Python xrange для R ИЛИ как петляться над большим набором данных lazilly?

Следующий пример основан на обсуждении использования expand.grid с большими данными. Как вы видите, это заканчивается ошибкой. Я предполагаю, что это связано с возможными комбинациями, которые соответствуют указанным страницам 68,7 миллиарда: > v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 expand.grid(v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) […]

Прямые ссылки – почему этот код компилируется?

Рассмотрим этот fragment: object A { val b = c val c = “foo” } println( Ab ) // prints “null” В рамках более крупной программы это приведет к сбою во время выполнения. Компилятор, по-видимому, допускает прямое обращение от «b» к (неинициализированному) «c», но «b» остается с исходным нулевым значением c. Почему это разрешено? Существуют […]

Ленькая оценка в Python

Что такое ленивая оценка в Python? Один веб-сайт сказал: В Python 3.x функция range() возвращает специальный объект диапазона, который вычисляет элементы списка по требованию (ленивая или отложенная оценка): >>> r = range(10) >>> print(r) range(0, 10) >>> print(r[3]) 3 Что подразумевается под этим?

Ленькая оценка в C ++

У C ++ нет встроенной поддержки для ленивой оценки (как это делает Haskell). Мне интересно, можно ли реализовать ленивую оценку на C ++ разумным образом. Если да, как бы вы это сделали? EDIT: Мне нравится ответ Конрада Рудольфа. Мне интересно, можно ли реализовать его более универсальным образом, например, используя параметризованный class lazy, который по существу […]

Передавать аргументы функции dplyr

Я хочу параметризовать следующее вычисление, используя dplyr который находит, какие значения Sepal.Length связаны с более чем одним значением Sepal.Width : library(dplyr) iris %>% group_by(Sepal.Length) %>% summarise(n.uniq=n_distinct(Sepal.Width)) %>% filter(n.uniq > 1) Обычно я писал бы что-то вроде этого: not.uniq.per.group % group_by(group.var) %>% summarise(n.uniq=n_distinct(uniq.var)) %>% filter(n.uniq > 1) } Однако этот подход вызывает ошибки, поскольку dplyr использует […]

Когда следует использовать Lazy ?

Я нашел эту статью о Lazy : Laziness в C # 4.0 – Lazy Какова наилучшая практика для лучшей производительности с использованием объектов Lazy? Может ли кто-нибудь указать мне на практическое применение в реальном приложении? Другими словами, когда я должен его использовать?

Interesting Posts

BackgroundWorker stream в ASP.NET

Android: Как изменить значок «Главная» ActionBar, чтобы быть чем-то другим, кроме значка приложения?

Разница между C ++ 03 throw () specifier C ++ 11 noexcept

Как установить Windows 7 с помощью USB 3?

Итак, почему i = ++ i + 1 четко определен в C ++ 11?

Netbeans – Ошибка: не удалось найти или загрузить основной class

Получить определенный бит из байта

Не удалось получить токен доступа из Facebook. Получил OAuthException говорит: «Ошибка проверки кода проверки»

Как я могу получать телефонные звонки на сервере Linux и скриптах в зависимости от числа нажатых?

Поддерживает ли поддержка OkHttp самоподписанные сертификаты SSL?

Почему использование обновления на lm внутри сгруппированных data.table потеряет данные модели?

Отключите всю конфигурацию, связанную с базой данных, в Spring Boot

Каковы истинные преимущества ExpandoObject?

Поиск файла или каталога по идентификатору NTFS

Загрузка файла getClass (). GetResource ()

Давайте будем гением компьютера.