Skip to content
Open
8 changes: 4 additions & 4 deletions build.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ libraryDependencies ++= Seq(
"org.typelevel" %% "cats-mtl-laws" % catsMtlVersion,
"org.typelevel" %% "cats-effect" % "3.4.6",

"io.monix" %% "monix" % "3.4.1",
//"io.monix" %% "monix" % "3.4.1",

// Scalaz
"org.scalaz" %% "scalaz-core" % "7.3.7",
Expand All @@ -43,13 +43,13 @@ libraryDependencies ++= Seq(
"com.chuusai" %% "shapeless" % "2.3.10",

// tofu
"tf.tofu" %% "tofu" % "0.11.1",
//"tf.tofu" %% "tofu" % "0.11.1",

// izumi
"io.7mind.izumi" %% "fundamentals-bio" % "1.0.10",
//"io.7mind.izumi" %% "fundamentals-bio" % "1.0.10",

// HoTT in Scala
"io.github.siddhartha-gadgil" %% "provingground-core-jvm" % "0.1.1",
//"io.github.siddhartha-gadgil" %% "provingground-core-jvm" % "0.1.1",

// test
"org.scalacheck" %% "scalacheck" % scalacheckVersion % Test,
Expand Down
2 changes: 1 addition & 1 deletion project/plugins.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
addDependencyTreePlugin
// sbt dependencyUpdates
addSbtPlugin("com.timushev.sbt" % "sbt-updates" % "0.6.4")
//addSbtPlugin("io.github.davidgregory084" % "sbt-tpolecat" % "0.1.8")
//addSbtPlugin("io.github.davidgregory084" % "sbt-tpolecat" % "0.1.20")
// sbt scalafmtAll
addSbtPlugin("org.scalameta" % "sbt-scalafmt" % "2.5.0")
// sbt clean coverage test coverageReport
Expand Down
17 changes: 17 additions & 0 deletions src/main/scala/ct_other_impls/DeclarativeVarianceFun.scala
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
package ct_other_impls

object DeclarativeVarianceFun {
case class Reader[-A, +B](run: A => B) // Profunctor-ish?
case class Op[+A, -B](run: B => A) // Profunctor-ish?
case class Ap[+F[+_], -A, +B](run: F[A => B]) // Profunctor-ish?
case class ContraAp[+F[-_], +A, -B](run: F[A => B]) // Profunctor-ish?
case class ApOp[+F[+_], +A, -B](run: F[B => A]) // Profunctor-ish?
case class Kleisli[+F[+_], -A, +B](run: A => F[B]) // Profunctor-ish?
case class ContraKleisli[-F[+_], -A, +B](run: F[A] => B) // Profunctor-ish?

case class Kleisli2[+F[-_], -A, -B](run: A => F[B]) // Nifunctor-ish?

case class CoKleisli[-F[-_], +A, +B](run: F[A] => B) // Bifunctor-ish?
case class Zip[+F[+_], +A, +B](run: F[(A, B)]) // Bifunctor-ish?
case class Alt[+F[+_], +A, +B](run: F[Either[A, B]]) // Bifunctor-ish?
}
Loading