24 lines
695 B
Scala
24 lines
695 B
Scala
package tf.bug.fancadetagless.test
|
|
|
|
import cats.effect.{ExitCode, IO, IOApp}
|
|
import cats.implicits._
|
|
import scalax.collection.Graph
|
|
import tf.bug.fancadetagless.World
|
|
|
|
object Main extends IOApp {
|
|
override def run(args: List[String]): IO[ExitCode] = {
|
|
object TwoPlusThreeOverFour extends Calc.Program[Float] {
|
|
override def apply[F[_]](int: Calc[F]): F[Float] =
|
|
int.div(
|
|
int.add(
|
|
int.lift(2.0f),
|
|
int.lift(3.0f)
|
|
),
|
|
int.lift(4.0f)
|
|
)
|
|
}
|
|
val ft = TwoPlusThreeOverFour(Calc.FancadeCalc[IO])
|
|
ft.runS(World(Set.empty, Graph.empty)).flatMap(w => IO(println(w))).as(ExitCode.Success)
|
|
}
|
|
}
|