My note on scalaz.Task
approaches. This is mainly for old code!!!!
I have found wrong usages of scalaz.Task in old programs.
Why this is important?
When you bring in FP ornaments into your code, it comes with certain cost. The first and formost is additional learning curve for new developers to come in and understand the concepts of total, side effect free, lazy descriptions of computations. This has its advantage of being able to ship robust code with equational reasoning. But what if the usage of FP constructs itself is wrong?
Most of the old scala-FP code has the usages of scalaz.Task
which is one of the most popular FP
datastructure then.
It's good to use it even today although there are typelevel libraries and ZIO providing better choices - cats.IO
, ZIO
, Monix.Task