Size: a a a

2020 May 20

IK

Ilya Kos in Haskell
Ilya
Спасибо за мнение. Совпадает с моими ощущениями.

Я много думал, после того как прочитал ответ @kana_sama, и тоже пришёл к выводу что TH здесь скорее "шашечки, чем ехать".

> не надо руками Смарт конструкторы писать

Но надо дописывать предикаты, если их нет. А для конкретных приложений их может легко не быть. Мне некоторое время казалось, что нет разницы делать валидацию в предикате или в смарт-конструкторе. Потом, я пришёл к выводу что предикаты лучше, потому что их можно композить.

В целом, однако, остаётся впечатление что это выходит за пределы "boring Haskell" и больше игрушечки. Но, опыта у меня ноль, видно будет потом.
А ну ещё я помню получал хорошие джейсон декодеры, которые предикаты проверяют и возвращают пользователю ошибку если данные не валидны.

И это для меня было прям классно — получаю проверку данных от пользователя «за бесплатно» о которой мне вообще думать даже не надо — оно просто работает
источник

AV

Alexander Vershilov in Haskell
А почему у these нет monad/applicative?
источник

AV

Alexander Vershilov in Haskell
Опс, не туда смотрю
источник

AV

Alexander Vershilov in Haskell
И есть ли у нас валидаторы поверх These готовые, которые уже не надо писать самому?
источник

AV

Alexander Vershilov in Haskell
monad-chronicle?
источник

MK

Maxim Koltsov in Haskell
чёт я не понял прикол
источник

MK

Maxim Koltsov in Haskell
пишут, что чтобы работали rts stats в метриках prometheus-metrics-ghc, надо запускать с +RTS -T
источник

MK

Maxim Koltsov in Haskell
но у меня и без этого работает...
источник

AV

Alexander Vershilov in Haskell
Не все данные без -T
источник

AV

Alexander Vershilov in Haskell
Там в половине мест нули будут
источник

AV

Alexander Vershilov in Haskell
hint: та половина мест нафиг не нужна
источник

MK

Maxim Koltsov in Haskell
хм...
источник

AV

Alexander Vershilov in Haskell
Хм а GHCENV полностью перекрывает with-rtsoptions?
источник

AV

Alexander Vershilov in Haskell
просто у меня в окружении -T нет, а в опциях по умолчанию есть
источник

MK

Maxim Koltsov in Haskell
не знаю, но +RTS мне казалось полностью перекрывает
источник

AV

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

AV

Alexander Vershilov in Haskell
Тут тоже про -T написано
источник

AV

Alexander Vershilov in Haskell
Мне что-то казалось, что без него только GCDetails не будет
источник

MK

Maxim Koltsov in Haskell
более того
источник

MK

Maxim Koltsov in Haskell
statsCollector name help sampleType stat labels = do
   statsEnabled <- getRTSStatsEnabled
   if statsEnabled
       then showCollector name help sampleType (stat <$> getRTSStats) labels
       else return []
источник