-- | The standard factorial function. See
-- <http://www.willamette.edu/~fruehr/haskell/evolution.html> for
-- possible improvements.
+--
+-- Examples:
+--
+-- >>> factorial 0
+-- 1
+--
+-- >>> factorial 4
+-- 24
+--
factorial :: Int -> Int
factorial n
| n <= 1 = 1
-- | Takes a three-dimensional list, and flattens it into a
-- one-dimensional one.
+--
+-- Examples:
+--
+-- >>> flatten [ [[1,2], [3,4]], [[5,6], [7,8]] ]
+-- [1,2,3,4,5,6,7,8]
+--
flatten :: [[[a]]] -> [a]
flatten xs = concat $ concat xs