diff --git a/hatt.cabal b/hatt.cabal
--- a/hatt.cabal
+++ b/hatt.cabal
@@ -1,5 +1,5 @@
 Name:               hatt
-Version:            1.5.0.2
+Version:            1.5.0.3
 
 Synopsis:           A truth table generator for classical propositional logic.
 Description:        Hatt is a command-line program which prints truth tables
diff --git a/src/Data/Logic/Propositional/NormalForms.hs b/src/Data/Logic/Propositional/NormalForms.hs
--- a/src/Data/Logic/Propositional/NormalForms.hs
+++ b/src/Data/Logic/Propositional/NormalForms.hs
@@ -1,5 +1,7 @@
-{-# OPTIONS_HADDOCK hide #-}
-
+-- | The functions exposed by this module convert expressions of type 'Expr'
+-- into different normal forms: negation normal form via 'toNNF', conjunctive
+-- normal form via 'toCNF' and disjunctive normal form via 'toDNF'. All these
+-- functions are total.
 module Data.Logic.Propositional.NormalForms
     ( toNNF
     , toCNF
diff --git a/src/Data/Logic/Propositional/Tables.hs b/src/Data/Logic/Propositional/Tables.hs
--- a/src/Data/Logic/Propositional/Tables.hs
+++ b/src/Data/Logic/Propositional/Tables.hs
@@ -1,5 +1,9 @@
-{-# OPTIONS_HADDOCK hide #-}
-
+-- | This module contains the truth table generating functionality of Hatt. The
+-- core function it exports is 'truthTable' which prints the truth table of the
+-- given expression. 'truthTableP' is a configurable version which allows one to
+-- select how to print expressions and truth values. This gives one the option
+-- of, for example, colouring outputs and changing the symbols used to represent
+-- the logical connectives.
 module Data.Logic.Propositional.Tables
     ( Printer
     , colourBool
@@ -38,10 +42,15 @@
     showVarValues = unwords $ fold ((:) . printer) [] a
     showExprValue = printer $ interpret expr a
 
+-- | Prints @T@ for 'True' and @F@ for 'False'.
 showBool :: Bool -> String
 showBool True  = "T"
 showBool False = "F"
 
+-- | Prints a green @T@ for 'True' and a red @F@ for 'False'. This is used when
+-- producing a string representation of a truth table with 'truthTable'. It can
+-- also be used as (as the second component of a 'Printer' pair) as an argument
+-- to the configurable 'truthTableP' function.
 colourBool :: Bool -> String
 colourBool True  = show . green . text $ "T"
 colourBool False = show . red . text $ "F"
diff --git a/src/hatt.hs b/src/hatt.hs
--- a/src/hatt.hs
+++ b/src/hatt.hs
@@ -42,7 +42,7 @@
   , interactive = False &= help "Enter interactive mode"
   , pretty      = False &= help "Use Unicode logic symbols"
   , coloured    = False &= help "Use colour-coded symbols"
-  } &= summary "Hatt 1.5.0.2, (c) Benedict Eastaugh 2012"
+  } &= summary "Hatt 1.5.0.3, (c) Benedict Eastaugh 2012"
     &= program "hatt"
 
 main :: IO ()
