abt-0.1.0.0: src/Abt/Class/Monad.hs
{-# LANGUAGE FunctionalDependencies #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE UnicodeSyntax #-}
module Abt.Class.Monad where
import Control.Applicative
class (Ord v, Eq v, Show v, Monad m, Applicative m) ⇒ MonadVar v m | m → v where
-- | Generates a fresh variable
fresh ∷ m v
-- | Generates a fresh variable tagged with a name
named ∷ String → m v