{-# LANGUAGE KindSignatures #-}

module Kinds where

import Prelude hiding ((==),(/=),foldr,foldl)

class Eq (t :: *) where
    (==) :: t -> t -> Bool
    (/=) :: t -> t -> Bool

    x == y = not (x /= y)
    x /= y = not (x == y)

class Foldable (t :: * -> *) where
   foldr :: (a -> b -> b) -> b -> t a -> b
   foldl :: (b -> a -> b) -> b -> t a -> b
