私はこれを試しています(学習目的で):
{-# LANGUAGE FlexibleInstances #-}
instance Monoid (a -> a) where
mempty = id
mappend f g = f . g
に等しいと期待id <> id
するid . id
ただし、次の(id <> id) 1
エラーが表示されます。
Non type-variable argument in the constraint: Monoid (a -> a)
実行するには何を変更すればよいですか?
モノイドと Haskell 型クラスをよりよく理解するためのものであり、実用的な使用法ではありません。