Вопросы по теме 'lenses'
Переменные неоднозначного типа для зависимых ограничений класса
Я пишу новую систему аутентификации для веб-фреймворка Snap , потому что встроенная недостаточно модульная, и у него есть некоторые функции, которые являются избыточными / «мертвым грузом» для моего приложения. Однако эта проблема вообще не связана...
402 просмотров
schedule
12.07.2023
Jquery Image Lens — идентификатор изображения Kinetic JS
Я пытаюсь использовать линзу изображения jquery на холсте Kinetic JS http://jsfiddle.net/user373721/7f8qM/ 15/ . У меня есть проблема, как найти идентификатор изображения на холсте, я пробовал:
myImage.onload = function () {
var...
433 просмотров
schedule
21.02.2023
Использование линз в обычных классах Scala
Большинство популярных библиотек JSON для Scala имеют возможность сериализовать и десериализовать классы case.
К сожалению, до выпуска Scala 2.11 существует ограничение на количество параметров, которые может иметь класс case (максимум 22). В...
902 просмотров
schedule
14.04.2022
Недопустимый полиморфный или квалифицированный тип в Control.Lens
Я работаю с Control.Lens . Фактическая функция, которую я пишу, довольно сложна, но для целей этого вопроса я свел ее к минимальному ошибочному примеру:
import Control.Lens
exampleFunc :: Lens s t a b -> String
exampleFunc _ = "Example"...
1721 просмотров
schedule
10.06.2022
Как я могу выразить `mapM` с помощью `concat`, используя линзы для объединения результатов операции ввода-вывода?
Я пытаюсь понять, как объединить traverseOf с >>= таким образом, чтобы было возможно следующее.
TLDR; Простым примером на чистом Haskell было бы что-то вроде этого, но с использованием линз глубоко внутри структуры данных.
λ>...
554 просмотров
schedule
03.06.2024
Имеет ли функция идентификации в Clojure такое же использование и назначение, что и функция id в Haskell?
В Clojure у нас есть функция identity . Он используется следующим образом :
user=> (filter identity [1 2 3 nil 4 false true 1234])
(1 2 3 4 true 1234)
user=> (partition-by identity (sort "abcdaabccc"))
((\a \a \a) (\b \b) (\c \c \c \c)...
1353 просмотров
schedule
09.01.2024
Учебник по Haskell Lens с траверсом
Я пытаюсь следовать этому руководству: http://blog.jakubarnold.cz/2014/08/06/lens-tutorial-stab-traversal-part-2.html
Я использую следующий код, который загружаю в ghci:
{-# LANGUAGE RankNTypes, ScopedTypeVariables #-}
import...
782 просмотров
schedule
03.02.2023
Средство извлечения атрибутов на основе типа Scala - только объектив Getter?
Каков наилучший способ извлечь тип из контейнера данных, такого как класс case.
Например, если у меня есть тегированный тип type Tagged[U] = { type Tag = U} trait PID , который представляет собой тегированный тип Int type ProductId = Int with...
601 просмотров
schedule
05.03.2023
Как использовать линзы для поиска значения на карте, увеличения его или установки значения по умолчанию
При работе с состоянием под названием AppState я хочу отслеживать количество, скажем, экземпляров. Эти экземпляры имеют разные идентификаторы типа InstanceId .
Поэтому мое состояние выглядит так
import Control.Lens
data AppState...
773 просмотров
schedule
09.06.2023
Как я могу использовать (^? ix 0) в независимом геттере?
Извините за плохо сформулированный заголовок, но я даже не знаю, как его правильно задать.
Как я могу повернуть это?
instPublicIP :: Instance -> Maybe Text
instPublicIP inst =
inst ^. insNetworkInterfaces ^? ix 0 . iniAssociation . _Just ....
90 просмотров
schedule
23.11.2023
Монада состояния Scala (scalaz) — сопоставление с типом состояния Option
Как я могу применить следующую функцию?
def wrapIntoOption(state: State[S, A]): State[Option[S], Option[A]]
Большая картина такова:
case class Engine(cylinders: Int)
case class Car(engineOpt: Option[Engine])
val engineOptLens =...
134 просмотров
schedule
20.02.2024
Реализовать выбор более 2 линз в Haskell
Я готовлюсь к экзамену Haskell через 2 недели. Сейчас я делаю несколько упражнений, но я застрял на этом.
Реализуйте функцию choosing , которая получает 2 линзы и должна возвращать новую линзу, которая работает с Either значениями.
Мне...
118 просмотров
schedule
07.04.2024
Объединение призм при извлечении полей JSON с помощью Lens-Aeson
У меня есть большой двоичный объект JSON, похожий на следующий:
[
{
"version": 1
},
{
"version": "3"
},
...
]
Обратите внимание, что некоторые версии являются числами, а некоторые — строками. Я хочу получить список версий....
347 просмотров
schedule
10.03.2024
Изменение атрибута с помощью объективов-моноклей с использованием значения другого атрибута
у меня следующая модель
import monocle.macros.Lenses
import monocle.function.all._
import monocle.std.list._
@Lenses("_") case class Poll(pollChoices: List[PollChoice], totalVoteCount: Int)
@Lenses("_") case class PollChoice(id: Int, value: Int,...
170 просмотров
schedule
25.07.2022
Как определить тип составного обхода?
Я читаю запись в блоге на обходы объектива . В нем есть состав
traverse.posts
и это заканчивается типом
(Traversable t, Applicative f) =>
([Post] -> f [Post]) -> t User -> f (t User)
Я понимаю, что это композиция...
97 просмотров
schedule
09.04.2024
Какова подходящая абстракция для объектива, который может потерпеть неудачу в качестве сеттера?
Я хотел бы определить что-то вроде объектива, но который может дать сбой при попытке установить. См. fooLens в следующем примере.
{-# LANGUAGE RankNTypes #-}
import Data.Char (toUpper)
import Data.Functor.Const (Const(..))
import...
111 просмотров
schedule
09.10.2022