(bind-func fmap:[List{!b}*,[!b,!a]*,List{!a}*]* (lambda (f F) (Cons$ F (x xs) (Cons (f x) (fmap f xs)) (Nil))))