checklist
checklist copied to clipboard
scalaz support
Hi. Thanks for the great work. I discovered checklist when searching for an alternative for ValidationNel with support for soft errors, which is a very compelling use case.
However my code base is based in scalaz, so I have forked and ported checklist to scalaz in this branch
Would you be interested in this?
Abstracting over the two FP libraries is a possibility. Personally all of my code is Cats-based now but there's no harm in looking into making a back-end-independent build.
We'd need custom type classes to replace MonadError
and a way of abstracting over Ior
and \&/
. There's a big of discussion of that forthcoming in issue #2.
I will keep a look in #2...
Regarding scalaz vs cats, please note that monocle still depends on scalaz[1], so checklist brings both cats and scalaz which is not perfect.
[1] https://github.com/julien-truffaut/Monocle/issues/419
Understood. Number of libraries doesn't bother me, personally, but I understand your concern. IIUC a port of Monocle to Cats is underway so this should be a temporary situation.
On Mon, 17 Apr 2017 at 23:56, João Ferreira [email protected] wrote:
I will keep a look in #2 https://github.com/davegurnell/checklist/issues/2...
Regarding scalaz vs cats, please note that monocle still depends on scalaz[1], so checklist brings both cats and scalaz which is not perfect.
[1] julien-truffaut/Monocle#419 https://github.com/julien-truffaut/Monocle/issues/419
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/davegurnell/checklist/issues/3#issuecomment-294619289, or mute the thread https://github.com/notifications/unsubscribe-auth/AAOI52kezoamHf3IDTxP8CO7_G_DahFsks5rw-4TgaJpZM4Mo2IC .
Looks like Monocle is moving to cats, so that makes favoring cats seem even more likely. I believe their RC is out now.
I think providing instances for scalaz typeclasses can be provided by us via a separate module, but I'm not sure how helpful it'd be provided the existence of shims.
Sorry for my radio silence on this. Shipping two libraries should be straightforward if we have our own data structure for storing results. I've not played with shims. It sounds like one more level of indirection than we need. I'm not adverse to it though!
On Mon, Jan 29, 2018 at 4:09 PM Jacob Barber [email protected] wrote:
I think providing instances for scalaz typeclasses can be provided by us via a separate module, but I'm not sure how helpful it'd be provided the existence of shims.
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/davegurnell/checklist/issues/3#issuecomment-361295325, or mute the thread https://github.com/notifications/unsubscribe-auth/AAOI50OsIIiTqFX6xGU-XjWDgnMuapurks5tPe1AgaJpZM4Mo2IC .