diff --git a/operational.cabal b/operational.cabal
--- a/operational.cabal
+++ b/operational.cabal
@@ -1,5 +1,5 @@
 Name:               operational
-Version:            0.2.0.3
+Version:            0.2.1.0
 Synopsis:           Implement monads by specifying operational semantics.
 Description:
   Tiny library for implementing monads by specifying the primitive instructions
diff --git a/src/Control/Monad/Operational.hs b/src/Control/Monad/Operational.hs
--- a/src/Control/Monad/Operational.hs
+++ b/src/Control/Monad/Operational.hs
@@ -44,12 +44,12 @@
     @'Program' instr@ is always a monad and
     automatically obeys the monad laws.
 -}
-type Program instr a = ProgramT instr Identity a
+type Program instr = ProgramT instr Identity
 
 -- | View type for inspecting the first instruction.
 --   It has two constructors 'Return' and @:>>=@.
 --   (For technical reasons, they are documented at 'ProgramViewT'.)
-type ProgramView instr a  = ProgramViewT instr Identity a
+type ProgramView instr  = ProgramViewT instr Identity
 
 -- | View function for inspecting the first instruction.
 view :: Program instr a -> ProgramView instr a
