module Control.Monad.Index where class Index ix where getVal::ix -- could also just use instead of flip23 :: (a->b->c->d) -> a -> c -> b -> d flip23 f a b c = f a c b