どちらかといえばHaskellでやる事じゃないな