packages feed

pandora-0.2.1: Pandora/Paradigm/Structure/Cartesian.hs

module Pandora.Paradigm.Structure.Cartesian (Cartesian) where

import Pandora.Paradigm.Basis.Product (type (:*:))

class Cartesian (t :: * -> *) where
	{-# MINIMAL (-:*:-) #-}
	(-:*:-) :: t a -> t b -> t (a :*: b)
	cartesian :: t a -> t b -> t (a :*: b)