├── .github └── workflows │ └── scala.yml ├── .gitignore ├── .mergify.yml ├── .scalafmt.conf ├── AbstractAlgebra.md ├── Adjunction.md ├── BasicAbstractions.md ├── Bifunctors.md ├── CombinatoryBirds.md ├── Comonads.md ├── ComputationalTrinitarianism.md ├── Contravariant.md ├── Free.md ├── FunctionalDataStructures.md ├── HigherKinded.md ├── KanExtensions.md ├── LICENSE ├── Limits.md ├── Optics.md ├── OtherEncodingsOfCT.md ├── Profunctors.md ├── README.md ├── RecursionSchemas.md ├── Topos.md ├── img ├── braided_hexagon1.svg ├── braided_hexagon2.svg ├── fun_trinc2.svg ├── mon_cat_triangle.svg ├── monoidal_pentagon.svg ├── pentagon_tuple.svg ├── single_op_abstract_algebra.svg ├── triangle_either.svg └── triangle_tuple.svg ├── notes ├── Computational Quadrinitarianism.MD ├── Hitchhiker's Guide to the Quadrinitarianism.MD ├── Monoidal Categories Notes.MD └── Periodic table of n-categories Notes.MD ├── project ├── build.properties └── plugins.sbt └── src ├── main └── scala │ ├── bifunctor │ └── InstancesForForBuildInTypes.scala │ ├── cayley │ └── CayleyTheorem.scala │ ├── contravariant │ └── HoFStructure.scala │ ├── ct_other_impls │ ├── DataCategory.scala │ └── ModularProfunctorBifunctorHierarchy.scala │ ├── disintegrate │ └── Disintegrate.scala │ ├── educational │ ├── abstract_algebra │ │ ├── Monoid.scala │ │ └── Semigroup.scala │ ├── category_theory │ │ ├── Alternative.scala │ │ ├── Applicative.scala │ │ ├── Apply.scala │ │ ├── Comonad.scala │ │ ├── Cont.scala │ │ ├── ContT.scala │ │ ├── Dijkstra.scala │ │ ├── Foldable.scala │ │ ├── Functor.scala │ │ ├── Invariant.scala │ │ ├── Monad.scala │ │ ├── StateMonad.scala │ │ ├── Traverse.scala │ │ ├── adjunct_rep │ │ │ ├── Adjunction.scala │ │ │ └── RepresentableSimpleImpl.scala │ │ ├── contra │ │ │ ├── Contravariant.scala │ │ │ ├── ContravariantCoyoneda.scala │ │ │ ├── Decidable.scala │ │ │ ├── Decide.scala │ │ │ ├── Divide.scala │ │ │ └── Divisible.scala │ │ ├── higher │ │ │ ├── CategoryK.scala │ │ │ ├── NaturalTransformation.scala │ │ │ └── monoidal │ │ │ │ ├── AlgebraOfADTs.scala │ │ │ │ ├── MonoidalCategory.scala │ │ │ │ └── MonoidalObject.scala │ │ ├── kan │ │ │ ├── Codensity.scala │ │ │ ├── Coyoneda.scala │ │ │ ├── DayConvolution.scala │ │ │ ├── DensitySimpleImpl.scala │ │ │ ├── LeftKanExtension.scala │ │ │ ├── LimitsAndColimits.scala │ │ │ ├── RightKanExtension.scala │ │ │ └── Yoneda.scala │ │ └── two │ │ │ ├── Category.scala │ │ │ ├── bifunctors │ │ │ ├── Biapplicative.scala │ │ │ ├── Bifoldable.scala │ │ │ ├── Bifunctor.scala │ │ │ ├── Bitraverse.scala │ │ │ ├── Clown.scala │ │ │ └── Joker.scala │ │ │ ├── enriched │ │ │ ├── MonoidalVCategory.scala │ │ │ ├── Optic.scala │ │ │ ├── ProfOptic.scala │ │ │ ├── StrongMonoidalVAction.scala │ │ │ ├── Tambara.scala │ │ │ ├── VBifunctor.scala │ │ │ ├── VCategory.scala │ │ │ ├── VFunctor.scala │ │ │ └── VProfunctor.scala │ │ │ └── profunctor │ │ │ ├── Costar.scala │ │ │ ├── Forget.scala │ │ │ ├── Profunctor.scala │ │ │ ├── Star.scala │ │ │ ├── choice │ │ │ └── Choice.scala │ │ │ ├── closed │ │ │ ├── Closed.scala │ │ │ ├── Closure.scala │ │ │ ├── Coclosed.scala │ │ │ └── Environment.scala │ │ │ ├── higher │ │ │ ├── DinaturalTransformation.scala │ │ │ ├── Procompose.scala │ │ │ ├── ProfunctorComonad.scala │ │ │ ├── ProfunctorCoyoneda.scala │ │ │ ├── ProfunctorFunctor.scala │ │ │ ├── ProfunctorMonad.scala │ │ │ ├── ProfunctorRan.scala │ │ │ └── ProfunctorYoneda.scala │ │ │ ├── mapping │ │ │ ├── Settable.scala │ │ │ └── Walk.scala │ │ │ ├── optics │ │ │ ├── Glassed.scala │ │ │ ├── Magnified.scala │ │ │ ├── Polynodal.scala │ │ │ ├── Polyp.scala │ │ │ ├── Telescoped.scala │ │ │ ├── Traversing.scala │ │ │ └── Windowed.scala │ │ │ ├── sieve │ │ │ ├── Cosieve.scala │ │ │ └── Sieve.scala │ │ │ ├── strong │ │ │ ├── CofreeTambara.scala │ │ │ ├── Costrong.scala │ │ │ ├── Cotambara.scala │ │ │ ├── FreeTambara.scala │ │ │ ├── Pastro.scala │ │ │ ├── Strong.scala │ │ │ └── Tambara.scala │ │ │ └── traverse │ │ │ ├── CofreeTraversing.scala │ │ │ ├── FreeTraversing.scala │ │ │ ├── Step.scala │ │ │ └── Traversing.scala │ ├── collections │ │ ├── ConsList.scala │ │ ├── FunCol.scala │ │ ├── HeadNel.scala │ │ ├── RoseTree.scala │ │ ├── Tree.scala │ │ └── ZipList.scala │ ├── data │ │ ├── CoKleisli.scala │ │ ├── CoReader.scala │ │ ├── Cofree.scala │ │ ├── Comparison.scala │ │ ├── Compose.scala │ │ ├── Const.scala │ │ ├── Fix.scala │ │ ├── FreeApp.scala │ │ ├── FreeM.scala │ │ ├── Id.scala │ │ ├── Kleisli.scala │ │ ├── Maybe.scala │ │ ├── Nu.scala │ │ ├── Op.scala │ │ ├── Predicate.scala │ │ ├── RIO.scala │ │ ├── Reader.scala │ │ ├── Show.scala │ │ ├── State.scala │ │ ├── TRIO.scala │ │ ├── These.scala │ │ ├── Thunk.scala │ │ ├── Validated.scala │ │ └── Writer.scala │ ├── optics │ │ ├── Iso.scala │ │ ├── Lens.scala │ │ └── Prism.scala │ └── types │ │ ├── Const.scala │ │ ├── Id.scala │ │ ├── NaturalTransformation.scala │ │ ├── Op.scala │ │ ├── Reader.scala │ │ ├── State.scala │ │ ├── Store.scala │ │ ├── Thunk.scala │ │ └── Void.scala │ ├── examples │ ├── ArrowBasicOps.scala │ ├── ArrowFizBuzz.scala │ ├── BifunctorSimpleImpl.scala │ ├── CoyonedaExample.scala │ ├── F_Algebras.scala │ ├── IntState.scala │ ├── KeyValueStoreFreeMonad.scala │ ├── KleisliExamples.scala │ ├── ReversingYonedaForList.scala │ ├── Tree.scala │ └── YonedaLiftAndLowerAreInverses.scala │ ├── filterable │ └── Filterable.scala │ ├── functorfunctor │ ├── FFunctor.scala │ └── FFunctorExample.scala │ ├── hoare │ └── HoareProbabilityMonad.scala │ ├── profunctor_optics │ ├── ClassicOptics.scala │ ├── EmilyProfOptics.scala │ ├── ProfunctorOpticsSimpleImpl.scala │ └── YonedaExamples.scala │ ├── selective │ └── Selective.scala │ └── typetheory │ ├── LambdaCalc.scala │ ├── Nat.scala │ ├── PropositionalLogic.scala │ ├── RhoCalculus.scala │ ├── SkiCombinators.scala │ └── logic │ ├── B3.scala │ ├── Bool.scala │ └── K3.scala └── test └── scala ├── applicative └── ApplicativeExamplesSpec.scala ├── bifunctor └── BicovariantExamplesSpec.scala ├── comonad └── ComonadCustomImplSpec.scala ├── contravariant ├── ContravariantSpec.scala └── DivideSpec.scala ├── functor ├── CovariantExamplesSpec.scala └── TreeFunctorSpec.scala ├── helper_implementations └── TreeSpec.scala ├── kan └── RanCustomImpl.scala ├── monad ├── CustomMonadImplementationSpec.scala └── ReaderMonadSpec.scala ├── monoid ├── AlternativeMonoidInstancesSpec.scala └── MonoidExamplesSpec.scala ├── mtl └── TraverseEmptyListPermutationsSpec.scala ├── profunctor ├── ClosedProfunctorSpec.scala ├── DivariantExampleSpec.scala ├── ProfunctorSpec.scala └── StrongSpec.scala ├── semigroup └── SemigroupExamplesSpec.scala ├── traverse └── TraverseExamplesSpec.scala └── zivariant └── ZivariantSpec.scala /.github/workflows/scala.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/.github/workflows/scala.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/.gitignore -------------------------------------------------------------------------------- /.mergify.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/.mergify.yml -------------------------------------------------------------------------------- /.scalafmt.conf: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /AbstractAlgebra.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/AbstractAlgebra.md -------------------------------------------------------------------------------- /Adjunction.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/Adjunction.md -------------------------------------------------------------------------------- /BasicAbstractions.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/BasicAbstractions.md -------------------------------------------------------------------------------- /Bifunctors.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/Bifunctors.md -------------------------------------------------------------------------------- /CombinatoryBirds.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/CombinatoryBirds.md -------------------------------------------------------------------------------- /Comonads.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/Comonads.md -------------------------------------------------------------------------------- /ComputationalTrinitarianism.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/ComputationalTrinitarianism.md -------------------------------------------------------------------------------- /Contravariant.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/Contravariant.md -------------------------------------------------------------------------------- /Free.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/Free.md -------------------------------------------------------------------------------- /FunctionalDataStructures.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/FunctionalDataStructures.md -------------------------------------------------------------------------------- /HigherKinded.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/HigherKinded.md -------------------------------------------------------------------------------- /KanExtensions.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/KanExtensions.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/LICENSE -------------------------------------------------------------------------------- /Limits.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/Limits.md -------------------------------------------------------------------------------- /Optics.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/Optics.md -------------------------------------------------------------------------------- /OtherEncodingsOfCT.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/OtherEncodingsOfCT.md -------------------------------------------------------------------------------- /Profunctors.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/Profunctors.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/README.md -------------------------------------------------------------------------------- /RecursionSchemas.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/RecursionSchemas.md -------------------------------------------------------------------------------- /Topos.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/Topos.md -------------------------------------------------------------------------------- /img/braided_hexagon1.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/img/braided_hexagon1.svg -------------------------------------------------------------------------------- /img/braided_hexagon2.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/img/braided_hexagon2.svg -------------------------------------------------------------------------------- /img/fun_trinc2.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/img/fun_trinc2.svg -------------------------------------------------------------------------------- /img/mon_cat_triangle.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/img/mon_cat_triangle.svg -------------------------------------------------------------------------------- /img/monoidal_pentagon.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/img/monoidal_pentagon.svg -------------------------------------------------------------------------------- /img/pentagon_tuple.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/img/pentagon_tuple.svg -------------------------------------------------------------------------------- /img/single_op_abstract_algebra.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/img/single_op_abstract_algebra.svg -------------------------------------------------------------------------------- /img/triangle_either.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/img/triangle_either.svg -------------------------------------------------------------------------------- /img/triangle_tuple.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/img/triangle_tuple.svg -------------------------------------------------------------------------------- /notes/Computational Quadrinitarianism.MD: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/notes/Computational Quadrinitarianism.MD -------------------------------------------------------------------------------- /notes/Hitchhiker's Guide to the Quadrinitarianism.MD: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/notes/Hitchhiker's Guide to the Quadrinitarianism.MD -------------------------------------------------------------------------------- /notes/Monoidal Categories Notes.MD: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/notes/Monoidal Categories Notes.MD -------------------------------------------------------------------------------- /notes/Periodic table of n-categories Notes.MD: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/notes/Periodic table of n-categories Notes.MD -------------------------------------------------------------------------------- /project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.10.6 2 | -------------------------------------------------------------------------------- /project/plugins.sbt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/project/plugins.sbt -------------------------------------------------------------------------------- /src/main/scala/bifunctor/InstancesForForBuildInTypes.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/bifunctor/InstancesForForBuildInTypes.scala -------------------------------------------------------------------------------- /src/main/scala/cayley/CayleyTheorem.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/cayley/CayleyTheorem.scala -------------------------------------------------------------------------------- /src/main/scala/contravariant/HoFStructure.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/contravariant/HoFStructure.scala -------------------------------------------------------------------------------- /src/main/scala/ct_other_impls/DataCategory.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/ct_other_impls/DataCategory.scala -------------------------------------------------------------------------------- /src/main/scala/ct_other_impls/ModularProfunctorBifunctorHierarchy.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/ct_other_impls/ModularProfunctorBifunctorHierarchy.scala -------------------------------------------------------------------------------- /src/main/scala/disintegrate/Disintegrate.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/disintegrate/Disintegrate.scala -------------------------------------------------------------------------------- /src/main/scala/educational/abstract_algebra/Monoid.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/abstract_algebra/Monoid.scala -------------------------------------------------------------------------------- /src/main/scala/educational/abstract_algebra/Semigroup.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/abstract_algebra/Semigroup.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/Alternative.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/Alternative.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/Applicative.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/Applicative.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/Apply.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/Apply.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/Comonad.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/Comonad.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/Cont.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/Cont.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/ContT.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/ContT.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/Dijkstra.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/Dijkstra.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/Foldable.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/Foldable.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/Functor.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/Functor.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/Invariant.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/Invariant.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/Monad.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/Monad.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/StateMonad.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/StateMonad.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/Traverse.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/Traverse.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/adjunct_rep/Adjunction.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/adjunct_rep/Adjunction.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/adjunct_rep/RepresentableSimpleImpl.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/adjunct_rep/RepresentableSimpleImpl.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/contra/Contravariant.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/contra/Contravariant.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/contra/ContravariantCoyoneda.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/contra/ContravariantCoyoneda.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/contra/Decidable.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/contra/Decidable.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/contra/Decide.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/contra/Decide.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/contra/Divide.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/contra/Divide.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/contra/Divisible.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/contra/Divisible.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/higher/CategoryK.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/higher/CategoryK.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/higher/NaturalTransformation.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/higher/NaturalTransformation.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/higher/monoidal/AlgebraOfADTs.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/higher/monoidal/AlgebraOfADTs.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/higher/monoidal/MonoidalCategory.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/higher/monoidal/MonoidalCategory.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/higher/monoidal/MonoidalObject.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/higher/monoidal/MonoidalObject.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/kan/Codensity.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/kan/Codensity.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/kan/Coyoneda.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/kan/Coyoneda.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/kan/DayConvolution.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/kan/DayConvolution.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/kan/DensitySimpleImpl.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/kan/DensitySimpleImpl.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/kan/LeftKanExtension.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/kan/LeftKanExtension.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/kan/LimitsAndColimits.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/kan/LimitsAndColimits.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/kan/RightKanExtension.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/kan/RightKanExtension.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/kan/Yoneda.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/kan/Yoneda.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/Category.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/Category.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/bifunctors/Biapplicative.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/bifunctors/Biapplicative.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/bifunctors/Bifoldable.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/bifunctors/Bifoldable.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/bifunctors/Bifunctor.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/bifunctors/Bifunctor.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/bifunctors/Bitraverse.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/bifunctors/Bitraverse.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/bifunctors/Clown.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/bifunctors/Clown.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/bifunctors/Joker.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/bifunctors/Joker.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/enriched/MonoidalVCategory.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/enriched/MonoidalVCategory.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/enriched/Optic.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/enriched/Optic.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/enriched/ProfOptic.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/enriched/ProfOptic.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/enriched/StrongMonoidalVAction.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/enriched/StrongMonoidalVAction.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/enriched/Tambara.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/enriched/Tambara.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/enriched/VBifunctor.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/enriched/VBifunctor.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/enriched/VCategory.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/enriched/VCategory.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/enriched/VFunctor.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/enriched/VFunctor.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/enriched/VProfunctor.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/enriched/VProfunctor.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/Costar.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/Costar.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/Forget.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/Forget.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/Profunctor.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/Profunctor.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/Star.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/Star.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/choice/Choice.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/choice/Choice.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/closed/Closed.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/closed/Closed.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/closed/Closure.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/closed/Closure.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/closed/Coclosed.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/closed/Coclosed.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/closed/Environment.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/closed/Environment.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/higher/DinaturalTransformation.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/higher/DinaturalTransformation.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/higher/Procompose.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/higher/Procompose.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/higher/ProfunctorComonad.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/higher/ProfunctorComonad.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/higher/ProfunctorCoyoneda.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/higher/ProfunctorCoyoneda.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/higher/ProfunctorFunctor.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/higher/ProfunctorFunctor.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/higher/ProfunctorMonad.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/higher/ProfunctorMonad.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/higher/ProfunctorRan.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/higher/ProfunctorRan.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/higher/ProfunctorYoneda.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/higher/ProfunctorYoneda.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/mapping/Settable.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/mapping/Settable.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/mapping/Walk.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/mapping/Walk.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/optics/Glassed.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/optics/Glassed.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/optics/Magnified.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/optics/Magnified.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/optics/Polynodal.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/optics/Polynodal.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/optics/Polyp.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/optics/Polyp.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/optics/Telescoped.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/optics/Telescoped.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/optics/Traversing.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/optics/Traversing.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/optics/Windowed.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/optics/Windowed.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/sieve/Cosieve.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/sieve/Cosieve.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/sieve/Sieve.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/sieve/Sieve.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/strong/CofreeTambara.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/strong/CofreeTambara.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/strong/Costrong.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/strong/Costrong.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/strong/Cotambara.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/strong/Cotambara.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/strong/FreeTambara.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/strong/FreeTambara.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/strong/Pastro.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/strong/Pastro.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/strong/Strong.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/strong/Strong.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/strong/Tambara.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/strong/Tambara.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/traverse/CofreeTraversing.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/traverse/CofreeTraversing.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/traverse/FreeTraversing.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/traverse/FreeTraversing.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/traverse/Step.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/traverse/Step.scala -------------------------------------------------------------------------------- /src/main/scala/educational/category_theory/two/profunctor/traverse/Traversing.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/category_theory/two/profunctor/traverse/Traversing.scala -------------------------------------------------------------------------------- /src/main/scala/educational/collections/ConsList.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/collections/ConsList.scala -------------------------------------------------------------------------------- /src/main/scala/educational/collections/FunCol.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/collections/FunCol.scala -------------------------------------------------------------------------------- /src/main/scala/educational/collections/HeadNel.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/collections/HeadNel.scala -------------------------------------------------------------------------------- /src/main/scala/educational/collections/RoseTree.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/collections/RoseTree.scala -------------------------------------------------------------------------------- /src/main/scala/educational/collections/Tree.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/collections/Tree.scala -------------------------------------------------------------------------------- /src/main/scala/educational/collections/ZipList.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/collections/ZipList.scala -------------------------------------------------------------------------------- /src/main/scala/educational/data/CoKleisli.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/data/CoKleisli.scala -------------------------------------------------------------------------------- /src/main/scala/educational/data/CoReader.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/data/CoReader.scala -------------------------------------------------------------------------------- /src/main/scala/educational/data/Cofree.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/data/Cofree.scala -------------------------------------------------------------------------------- /src/main/scala/educational/data/Comparison.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/data/Comparison.scala -------------------------------------------------------------------------------- /src/main/scala/educational/data/Compose.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/data/Compose.scala -------------------------------------------------------------------------------- /src/main/scala/educational/data/Const.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/data/Const.scala -------------------------------------------------------------------------------- /src/main/scala/educational/data/Fix.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/data/Fix.scala -------------------------------------------------------------------------------- /src/main/scala/educational/data/FreeApp.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/data/FreeApp.scala -------------------------------------------------------------------------------- /src/main/scala/educational/data/FreeM.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/data/FreeM.scala -------------------------------------------------------------------------------- /src/main/scala/educational/data/Id.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/data/Id.scala -------------------------------------------------------------------------------- /src/main/scala/educational/data/Kleisli.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/data/Kleisli.scala -------------------------------------------------------------------------------- /src/main/scala/educational/data/Maybe.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/data/Maybe.scala -------------------------------------------------------------------------------- /src/main/scala/educational/data/Nu.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/data/Nu.scala -------------------------------------------------------------------------------- /src/main/scala/educational/data/Op.scala: -------------------------------------------------------------------------------- 1 | package educational.data 2 | 3 | case class Op[K[_, _], A, B](unOp: K[B, A]) 4 | -------------------------------------------------------------------------------- /src/main/scala/educational/data/Predicate.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/data/Predicate.scala -------------------------------------------------------------------------------- /src/main/scala/educational/data/RIO.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/data/RIO.scala -------------------------------------------------------------------------------- /src/main/scala/educational/data/Reader.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/data/Reader.scala -------------------------------------------------------------------------------- /src/main/scala/educational/data/Show.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/data/Show.scala -------------------------------------------------------------------------------- /src/main/scala/educational/data/State.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/data/State.scala -------------------------------------------------------------------------------- /src/main/scala/educational/data/TRIO.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/data/TRIO.scala -------------------------------------------------------------------------------- /src/main/scala/educational/data/These.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/data/These.scala -------------------------------------------------------------------------------- /src/main/scala/educational/data/Thunk.scala: -------------------------------------------------------------------------------- 1 | package educational.data 2 | 3 | case class Thunk[A](run: () => A) 4 | -------------------------------------------------------------------------------- /src/main/scala/educational/data/Validated.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/data/Validated.scala -------------------------------------------------------------------------------- /src/main/scala/educational/data/Writer.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/data/Writer.scala -------------------------------------------------------------------------------- /src/main/scala/educational/optics/Iso.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/optics/Iso.scala -------------------------------------------------------------------------------- /src/main/scala/educational/optics/Lens.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/optics/Lens.scala -------------------------------------------------------------------------------- /src/main/scala/educational/optics/Prism.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/optics/Prism.scala -------------------------------------------------------------------------------- /src/main/scala/educational/types/Const.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/types/Const.scala -------------------------------------------------------------------------------- /src/main/scala/educational/types/Id.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/types/Id.scala -------------------------------------------------------------------------------- /src/main/scala/educational/types/NaturalTransformation.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/types/NaturalTransformation.scala -------------------------------------------------------------------------------- /src/main/scala/educational/types/Op.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/types/Op.scala -------------------------------------------------------------------------------- /src/main/scala/educational/types/Reader.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/types/Reader.scala -------------------------------------------------------------------------------- /src/main/scala/educational/types/State.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/types/State.scala -------------------------------------------------------------------------------- /src/main/scala/educational/types/Store.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/types/Store.scala -------------------------------------------------------------------------------- /src/main/scala/educational/types/Thunk.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/educational/types/Thunk.scala -------------------------------------------------------------------------------- /src/main/scala/educational/types/Void.scala: -------------------------------------------------------------------------------- 1 | package educational.types 2 | 3 | sealed trait Void { 4 | def absurd[A]: A 5 | } 6 | -------------------------------------------------------------------------------- /src/main/scala/examples/ArrowBasicOps.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/examples/ArrowBasicOps.scala -------------------------------------------------------------------------------- /src/main/scala/examples/ArrowFizBuzz.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/examples/ArrowFizBuzz.scala -------------------------------------------------------------------------------- /src/main/scala/examples/BifunctorSimpleImpl.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/examples/BifunctorSimpleImpl.scala -------------------------------------------------------------------------------- /src/main/scala/examples/CoyonedaExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/examples/CoyonedaExample.scala -------------------------------------------------------------------------------- /src/main/scala/examples/F_Algebras.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/examples/F_Algebras.scala -------------------------------------------------------------------------------- /src/main/scala/examples/IntState.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/examples/IntState.scala -------------------------------------------------------------------------------- /src/main/scala/examples/KeyValueStoreFreeMonad.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/examples/KeyValueStoreFreeMonad.scala -------------------------------------------------------------------------------- /src/main/scala/examples/KleisliExamples.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/examples/KleisliExamples.scala -------------------------------------------------------------------------------- /src/main/scala/examples/ReversingYonedaForList.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/examples/ReversingYonedaForList.scala -------------------------------------------------------------------------------- /src/main/scala/examples/Tree.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/examples/Tree.scala -------------------------------------------------------------------------------- /src/main/scala/examples/YonedaLiftAndLowerAreInverses.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/examples/YonedaLiftAndLowerAreInverses.scala -------------------------------------------------------------------------------- /src/main/scala/filterable/Filterable.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/filterable/Filterable.scala -------------------------------------------------------------------------------- /src/main/scala/functorfunctor/FFunctor.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/functorfunctor/FFunctor.scala -------------------------------------------------------------------------------- /src/main/scala/functorfunctor/FFunctorExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/functorfunctor/FFunctorExample.scala -------------------------------------------------------------------------------- /src/main/scala/hoare/HoareProbabilityMonad.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/hoare/HoareProbabilityMonad.scala -------------------------------------------------------------------------------- /src/main/scala/profunctor_optics/ClassicOptics.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/profunctor_optics/ClassicOptics.scala -------------------------------------------------------------------------------- /src/main/scala/profunctor_optics/EmilyProfOptics.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/profunctor_optics/EmilyProfOptics.scala -------------------------------------------------------------------------------- /src/main/scala/profunctor_optics/ProfunctorOpticsSimpleImpl.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/profunctor_optics/ProfunctorOpticsSimpleImpl.scala -------------------------------------------------------------------------------- /src/main/scala/profunctor_optics/YonedaExamples.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/profunctor_optics/YonedaExamples.scala -------------------------------------------------------------------------------- /src/main/scala/selective/Selective.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/selective/Selective.scala -------------------------------------------------------------------------------- /src/main/scala/typetheory/LambdaCalc.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/typetheory/LambdaCalc.scala -------------------------------------------------------------------------------- /src/main/scala/typetheory/Nat.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/typetheory/Nat.scala -------------------------------------------------------------------------------- /src/main/scala/typetheory/PropositionalLogic.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/typetheory/PropositionalLogic.scala -------------------------------------------------------------------------------- /src/main/scala/typetheory/RhoCalculus.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/typetheory/RhoCalculus.scala -------------------------------------------------------------------------------- /src/main/scala/typetheory/SkiCombinators.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/typetheory/SkiCombinators.scala -------------------------------------------------------------------------------- /src/main/scala/typetheory/logic/B3.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/typetheory/logic/B3.scala -------------------------------------------------------------------------------- /src/main/scala/typetheory/logic/Bool.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/typetheory/logic/Bool.scala -------------------------------------------------------------------------------- /src/main/scala/typetheory/logic/K3.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/main/scala/typetheory/logic/K3.scala -------------------------------------------------------------------------------- /src/test/scala/applicative/ApplicativeExamplesSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/test/scala/applicative/ApplicativeExamplesSpec.scala -------------------------------------------------------------------------------- /src/test/scala/bifunctor/BicovariantExamplesSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/test/scala/bifunctor/BicovariantExamplesSpec.scala -------------------------------------------------------------------------------- /src/test/scala/comonad/ComonadCustomImplSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/test/scala/comonad/ComonadCustomImplSpec.scala -------------------------------------------------------------------------------- /src/test/scala/contravariant/ContravariantSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/test/scala/contravariant/ContravariantSpec.scala -------------------------------------------------------------------------------- /src/test/scala/contravariant/DivideSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/test/scala/contravariant/DivideSpec.scala -------------------------------------------------------------------------------- /src/test/scala/functor/CovariantExamplesSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/test/scala/functor/CovariantExamplesSpec.scala -------------------------------------------------------------------------------- /src/test/scala/functor/TreeFunctorSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/test/scala/functor/TreeFunctorSpec.scala -------------------------------------------------------------------------------- /src/test/scala/helper_implementations/TreeSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/test/scala/helper_implementations/TreeSpec.scala -------------------------------------------------------------------------------- /src/test/scala/kan/RanCustomImpl.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/test/scala/kan/RanCustomImpl.scala -------------------------------------------------------------------------------- /src/test/scala/monad/CustomMonadImplementationSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/test/scala/monad/CustomMonadImplementationSpec.scala -------------------------------------------------------------------------------- /src/test/scala/monad/ReaderMonadSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/test/scala/monad/ReaderMonadSpec.scala -------------------------------------------------------------------------------- /src/test/scala/monoid/AlternativeMonoidInstancesSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/test/scala/monoid/AlternativeMonoidInstancesSpec.scala -------------------------------------------------------------------------------- /src/test/scala/monoid/MonoidExamplesSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/test/scala/monoid/MonoidExamplesSpec.scala -------------------------------------------------------------------------------- /src/test/scala/mtl/TraverseEmptyListPermutationsSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/test/scala/mtl/TraverseEmptyListPermutationsSpec.scala -------------------------------------------------------------------------------- /src/test/scala/profunctor/ClosedProfunctorSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/test/scala/profunctor/ClosedProfunctorSpec.scala -------------------------------------------------------------------------------- /src/test/scala/profunctor/DivariantExampleSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/test/scala/profunctor/DivariantExampleSpec.scala -------------------------------------------------------------------------------- /src/test/scala/profunctor/ProfunctorSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/test/scala/profunctor/ProfunctorSpec.scala -------------------------------------------------------------------------------- /src/test/scala/profunctor/StrongSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/test/scala/profunctor/StrongSpec.scala -------------------------------------------------------------------------------- /src/test/scala/semigroup/SemigroupExamplesSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/test/scala/semigroup/SemigroupExamplesSpec.scala -------------------------------------------------------------------------------- /src/test/scala/traverse/TraverseExamplesSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/test/scala/traverse/TraverseExamplesSpec.scala -------------------------------------------------------------------------------- /src/test/scala/zivariant/ZivariantSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemastero/scala_typeclassopedia/HEAD/src/test/scala/zivariant/ZivariantSpec.scala --------------------------------------------------------------------------------