Skip to content

Instantly share code, notes, and snippets.

John A. De Goes jdegoes

Block or report user

Report or block jdegoes

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
gfixler / lofp_rank
Last active Mar 24, 2018
Current placement on the Standardized Ladder of Functional Programming
View lofp_rank
Standardized Ladder of Functional Programming
Level Key
0: I've never heard of this
1: I've heard of this
2: I've looked into this, but don't get it yet
3. I have a basic understanding/am using this
4. I've used this for a while/feel pretty solid on
5. I could comfortably teach this to others
runarorama / Adjunctions.scala
Last active Dec 2, 2019
Free/forgetful adjunctions
View Adjunctions.scala
import scalaz._, Scalaz._
// Adjunction between `F` and `G` means there is an
// isomorphism between `A => G[B]` and `F[A] => B`.
trait Adjunction[F[_],G[_]] {
def leftAdjunct[A, B](a: A)(f: F[A] => B): G[B]
def rightAdjunct[A, B](a: F[A])(f: A => G[B]): B
// Adjunction between free and forgetful functor.
You can’t perform that action at this time.