--- If we are passed a '0' or '1', convert it appropriately. Otherwise,
--- default to None.
-bit_from_char :: Char -> Bit
-bit_from_char '0' = Zero
-bit_from_char '1' = One
-bit_from_char _ = None
+-- | If we are passed a '0' or '1', convert it
+-- appropriately. Otherwise, return Nothing.
+bit_from_char :: Char -> Maybe Bit
+bit_from_char '0' = Just Zero
+bit_from_char '1' = Just One
+bit_from_char _ = Nothing