Skip to content

Instantly share code, notes, and snippets.

View ilcavero's full-sized avatar

ilcavero ilcavero

View GitHub Profile
### Keybase proof
I hereby claim:
* I am ilcavero on github.
* I am ilcavero (https://keybase.io/ilcavero) on keybase.
* I have a public key whose fingerprint is 4A8B 72C8 E22E 06EC 2C29 60FF 14F3 DD51 EA12 2782
To claim this, I am signing this object:
@ilcavero
ilcavero / Determine.scala
Created November 24, 2011 19:09
a non working scala monad
sealed abstract class Determine[+A] {
def map[B](f: A => B): Determine[B]
def flatMap[B](f: A => Determine[B]): Determine[B]
def filter(p: A => Boolean): Determine[A]
def foreach(b: A => Unit): Unit
}
final case class Known[+A](value: A) extends Determine[A] {
def map[B](f: A => B): Determine[B] = Known(f(value))
def flatMap[B](f: A => Determine[B]): Determine[B] = f(value)