Size: a a a

2020 May 26

YS

Yan Shkurinskiy in Haskell
Т.к. основная монада - ReaderT IO, а в IO с транзакциями не поработаешь
источник

AV

Alexander Vershilov in Haskell
Почему?
источник

YS

Yan Shkurinskiy in Haskell
Можно было конечно сделать RederT Session и потом каждый раз для IO поднимать liftIO, я не стал так делать
источник

YS

Yan Shkurinskiy in Haskell
Alexander Vershilov
Почему?
Я не смог(
источник

AV

Alexander Vershilov in Haskell
У меня правда и Session нет
источник

YS

Yan Shkurinskiy in Haskell
Alexander Vershilov
У меня правда и Session нет
Вот!
источник

LO

Leonid 🦇 Onokhov in Haskell
Как быть с транзакциями и гранулярными классами?
источник

YS

Yan Shkurinskiy in Haskell
У меня стандартные инструменты hasql
источник

AV

Alexander Vershilov in Haskell
Делается TransactionHandle внутри которого можно вызывать statement и работать в IO
источник

AV

Alexander Vershilov in Haskell
У меня тоже + мелкий wrapper
источник

YS

Yan Shkurinskiy in Haskell
Leonid 🦇 Onokhov
Как быть с транзакциями и гранулярными классами?
монадка для этого отдельно)
источник

LO

Leonid 🦇 Onokhov in Haskell
Yan Shkurinskiy
монадка для этого отдельно)
Поясни
источник

YS

Yan Shkurinskiy in Haskell
Alexander Vershilov
Делается TransactionHandle внутри которого можно вызывать statement и работать в IO
На тот момент я не осилил видимо, и у меня теперь две монадки
источник

AV

Alexander Vershilov in Haskell
Который ещё умеет обрабатывать разрывы соединенийпереподключаться и т.п.
источник

YS

Yan Shkurinskiy in Haskell
Одна монадка - ридер над ио, вторая - ридер над сессиями. Чтобы мне работать с транзакциями, мне нужно работать в монадке сессии
источник

AV

Alexander Vershilov in Haskell
Но то, как я работаю с hasql сильно отличается от того, что предполагается Никитой, т.е. это на свой страх и риск
источник

YS

Yan Shkurinskiy in Haskell
И потом, когда нужно зафиксировать транзакции - я поднимаю их в ио
источник

LO

Leonid 🦇 Onokhov in Haskell
Yan Shkurinskiy
Одна монадка - ридер над ио, вторая - ридер над сессиями. Чтобы мне работать с транзакциями, мне нужно работать в монадке сессии
А констрейнты на что будут?
источник

YS

Yan Shkurinskiy in Haskell
Leonid 🦇 Onokhov
А констрейнты на что будут?
по разному)
источник

YS

Yan Shkurinskiy in Haskell
некоторые на монадку дб
источник