おれもIOわからん。
IO :: ((IOError -> IOResult) -> (a -> IOResult) ->
IOResult) -> IO a