@hackage / groups-generic

Generically derive Group instances.

Latest0.3.1.0

About

Metadata

  • Last updated , by sheaf
  • License BSD-3-Clause
  • Categories Mathematics
  • Maintained by: Sam Derbyshire

  • Lottery factor: 0

Links

Installation

Readme

Generically derive group instances:

{-# LANGUAGE DeriveGeneric, DerivingVia #-}
import GHC.Generics ( Generic, Generically (..) )

data MyRecord
  = MyRecord
  { field1 :: Sum Double
  , field2 :: Product Double
  , field3 :: ( Sum Int, Sum Int )
  }
  deriving Generic
  deriving ( Semigroup, Monoid, Group )
    via Generically MyRecord