Idris2/libs/contrib/Control/Algebra/Implementations.idr
Edwin Brady d6370380e6 Missing interface methods now cause an error
This was always the intended behaviour, but until now not implemented!
This caught a couple of issues in contrib and a test.
2021-06-27 20:03:19 +01:00

23 lines
438 B
Idris

module Control.Algebra.Implementations
import Control.Algebra
-- This file is for algebra implementations with nowhere else to go.
%default total
-- Functions ---------------------------
Semigroup (ty -> ty) where
(<+>) = (.)
SemigroupV (ty -> ty) where
semigroupOpIsAssociative _ _ _ = Refl
Monoid (ty -> ty) where
neutral = id
MonoidV (ty -> ty) where
monoidNeutralIsNeutralL _ = Refl
monoidNeutralIsNeutralR _ = Refl