Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
次のカスタム newtype を持つ:
newtype QueryM a = QueryM (Connection -> IO a)
インスタンスも持つようAlternativeに制約しながら、インスタンスを宣言するにはどうすればよいですか? それともできますか?aAlternative
Alternative
a
私は次のようなことを意味します:
instance (Alternative a) => Alternative (QueryM a) where
に引数を追加すると、ここで問題なくコンパイルされますa。
import Control.Applicative newtype QueryM a b = QueryM (Connection -> IO (a b)) type Connection = () instance Functor (QueryM a) instance Applicative (QueryM a) instance (Alternative a) => Alternative (QueryM a) where