IOとかListとかが実際に果たす役割はどうでもよくて、共通する構造によって表現可能ってことだから 関数よりむしろモナドのほうが広いとも言える