--- /dev/null
+module Bit where
+
+data Bit = Zero | One
+ deriving (Eq, Show)
+
+bit_to_int :: Bit -> Int
+bit_to_int Zero = 0
+bit_to_int One = 1
+
+-- If we are passed a '0' or '1', convert it appropriately. Otherwise,
+-- default to Zero.
+bit_from_char :: Char -> Bit
+bit_from_char '0' = Zero
+bit_from_char '1' = One
+bit_from_char _ = Zero