Size: a a a

2020 June 25

AP

Aleksei (astynax) Pi... in Haskell
в середине эффект
источник

YS

Yan Shkurinskiy in Haskell
DTO - хорошо с:
источник

AP

Aleksei (astynax) Pi... in Haskell
data User a = User
 { uName :: Text
 , uAge :: Int
 , uProfile :: a
 }

data Profile = ...

decodeFirst :: Text -> User Value

doStuff :: User Value -> m (context, User Value)

decodeRest :: (context, User Value) -> User Profile
источник

AP

Aleksei (astynax) Pi... in Haskell
в Value  будет "недодекодированная" часть
источник

JS

Jerzy Syrowiecki in Haskell
Николай Артамонов
Да в том-то и дело, что хотелось избежать разных типов: один тип - чисто DTO, другой - предметный. Хотелось сразу в предметный декодировать. А предметный у меня создается смарт-конструктором, который сразу проверяет, что все инварианты предметной области соблюдены. И не позволяет сконструировать значение с некорректными инвариантами. Получается, что придется все же вводить DTO'шку промежуточную.
можно написать конкретную функцию вместо инстанса
источник

НА

Николай Артамонов... in Haskell
Aleksei (astynax) Pirogov
data User a = User
 { uName :: Text
 , uAge :: Int
 , uProfile :: a
 }

data Profile = ...

decodeFirst :: Text -> User Value

doStuff :: User Value -> m (context, User Value)

decodeRest :: (context, User Value) -> User Profile
Интересный вариант)
источник

AV

Alexander Vershilov in Haskell
А это надо из-за сохранения обратной совместимости и прямой совместимости, а это надо часто
источник

AA

A64m AL256m qn<co... in Haskell
Alexander Vershilov
> [Also, I recently stepped down as chair of the Core Libraries Committee, and should update by bio for Yow!]

Кметт из комитета ушёл?
из комитета-то не ушел, председателем перестал быть
источник

AV

Alexander Vershilov in Haskell
Ясно
источник

YP

Yuriy Pitomets in Haskell
а неплохой пакетик https://hackage.haskell.org/package/deriving-aeson
источник

AV

Alexander Vershilov in Haskell
я торопился, но не успел
источник

YP

Yuriy Pitomets in Haskell
источник

TZ

Timofey Zakrevskiy in Haskell
а можно как-то сделать так, чтобы *.hie файлы не валились в одну кучу, а имели хоть какую-то иерархию?
источник

KZ

Kirill Zaborsky in Haskell
подозреваю, что вариант только выбрать другую кучу - https://downloads.haskell.org/ghc/latest/docs/html/users_guide/separate_compilation.html?highlight=hie#ghc-flag--hiedir%20%E2%9F%A8dir%E2%9F%A9
источник

YP

Yuriy Pitomets in Haskell
тупой вопрос: любопытно, есть ли type family поверх констрейнт в виде лямбды, чтобы не дублировать тайпклассы для нескольких переменных в сигнатурах функций... 🤪
источник

YS

Yan Shkurinskiy in Haskell
А как это может выглядеть?
источник

JS

Jerzy Syrowiecki in Haskell
Yuriy Pitomets
тупой вопрос: любопытно, есть ли type family поверх констрейнт в виде лямбды, чтобы не дублировать тайпклассы для нескольких переменных в сигнатурах функций... 🤪
что-то типа All Show [a, b, c]?
источник

JS

Jerzy Syrowiecki in Haskell
источник

YP

Yuriy Pitomets in Haskell
о да, интересное, спасибо
источник

YP

Yuriy Pitomets in Haskell
еще constraints либа вроде интересная, доводилось ли юзать? Но слегка зубодробительная местами, или то мне показалось
источник