import com.twitter.util.Future import scalaz._ import Scalaz._ implicit def FutureFunctor: Functor[Future] = new Functor[Future] { def map[A, B](f: Future[A])(map: A => B): Future[B] = f.map(map(_)) } implicit def FutureMonad: Monad[Future] = new Monad[Future] { def point[A](a: => A) = Future.value(a) def bind[A, B](f: Future[A])(fmap: A => Future[B]) = f.flatMap(fmap(_)) } type ReaderTFuture[A, B