GeneralizedNewtypeDeriving
Haskell:言語拡張
モナド変換子
を使う時に合わせて使うことで
モナドスタック
をそのままモナドに
lift地獄
回避
Ref.icon
モナド変換子(その1: 基本) - Qiita