data-category-0.5.0: Data/Category/Unit.hs
{-# LANGUAGE GADTs, NoImplicitPrelude #-}
-----------------------------------------------------------------------------
-- |
-- Module : Data.Category.Unit
-- License : BSD-style (see the file LICENSE)
--
-- Maintainer : sjoerd@w3future.com
-- Stability : experimental
-- Portability : non-portable
-----------------------------------------------------------------------------
module Data.Category.Unit where
import Data.Category
data Unit a b where
Unit :: Unit () ()
-- | `Unit` is the category with one object.
instance Category Unit where
src Unit = Unit
tgt Unit = Unit
Unit . Unit = Unit