scala/cats2
-
Nestedscala/cats2 2023. 1. 16. 10:07
cats Nested 예제 import cats.data._ import cats.syntax.all._ import scala.util.{Success, Try} object NestedExample { def main(args: Array[String]): Unit = { val someValue: Try[Option[Int]] = Success(2.some) val basicScala: Try[Option[Int]] = someValue.map(_.map(_ * 3)) val catsScala: Try[Option[Int]] = Nested(someValue).map(_ * 3).value } }
-
Statescala/cats2 2023. 1. 10. 09:49
문제 https://wefree.tistory.com/44 의 문제를 cats State Monad 를 이용해 구현해 본다. 코드 import cats._ import cats.data._ import cats.syntax.all._ object GolfState { def swing(n: Int): State[Int, Int] = State(s => (s+n, s+n)) def main(args: Array[String]): Unit = { val states: Seq[State[Int, Int]] = List(swing(20), swing(10), swing(15)) val finalState: State[Int, Int] = states.reduce(_ *> _) val (s,a) = finalSt..