Size: a a a

2020 July 03

JS

Jerzy Syrowiecki in Haskell
ладно, забанил двух пользователей с неадекватными репликами на английском
источник

AV

Alexander Vershilov in Haskell
продолжая вчерашнее, вот в bytestring, правильный билдер:

-- | Decimal encoding of an 'Int64'.
{-# INLINE int64Dec #-}
int64Dec ::
BoundedPrim Int64
int64Dec = boudedPrim 20 $ c_long_long_int_dec . fromIntegral
источник

AV

Alexander Vershilov in Haskell
гарантируем, что у нас есть нужное число символов и потом аккуратно туда пишем число преобразуя эффективной функцией из сишки
источник

AV

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

AV

Alexander Vershilov in Haskell
Аааа у меня deriving via не работает 🙁
источник

AV

Alexander Vershilov in Haskell
есть Param x, конструктор которого не экспортирован. Есть class AsValue a where value :: Param a
есть инстансы для примитивных типов, напр Int64

Как сделать интанс для newtype над Int64 с минимумом усилий?
источник

AV

Alexander Vershilov in Haskell
GeneralizedNewtypeDeriving не работает
источник

AV

Alexander Vershilov in Haskell
DerivingVia напрямую тоже не работает
источник

AV

Alexander Vershilov in Haskell
DerivingVia через newtype Coerced a b = Coerced b и AsValue (Coerced a b) тоже
источник

AV

Alexander Vershilov in Haskell
пока самое дешевое кажется писать:
instance HD.AsValue X where value = value @Int64 <&> coerce
источник

AV

Alexander Vershilov in Haskell
но это же печалька
источник

AV

Alexander Vershilov in Haskell
Сделать свой Params и делать unsafeCoerce не предлагать
источник

AV

Alexander Vershilov in Haskell
Хочу deriving X TH function
источник

MK

Maxim Koltsov in Haskell
а что GND говорит?
источник

AV

Alexander Vershilov in Haskell
Незя говорит
источник

AV

Alexander Vershilov in Haskell
Точную ошибку скинуть?
источник

MK

Maxim Koltsov in Haskell
попробуй
источник

AV

Alexander Vershilov in Haskell
src/Data/Id.hs:48:21: error:
   • Couldn't match type ‘Int64’ with ‘Id’
       arising from the coercion of the method ‘HD.value’
         from type ‘HD.Value Int64’ to type ‘HD.Value Id’
   • When deriving the instance for (HD.AsValue Id)
  |
48 |   deriving newtype (HD.AsValue)
источник

AV

Alexander Vershilov in Haskell
Та же проблема что с via
источник

AV

Alexander Vershilov in Haskell
Он не может конвертнуть Params a в Params b, т.к. не знает, как ему это сделать, ему не сказать, что можно записать fmap Constr Params
источник