data Sequenz = Sequenz String deriving Show data RawGenom = RawGenom [Sequenz] deriving Show data Data a = Error | Data a --data EvalGenom = EvalGenom [Data a] unpackGenom :: RawGenom -> [Sequenz] unpackGenom (RawGenom a) = a unpackSequenz :: Sequenz -> String unpackSequenz (Sequenz a) = a packSequenz :: String -> Sequenz packSequenz = Sequenz lookupSequenz :: String -> lookupSequenz x = case x of "0001" -> Data 1 "0010" -> Data 2 "0011" -> Data 3 "0100" -> Data 4 "0101" -> Data 5 "0110" -> Data 6 "0111" -> Data 7 "1000" -> Data 8 "1001" -> Data 9 "1010" -> Data (+) "1011" -> Data (-) _ -> Error evalGenom :: RawGenom -> [String] evalGenom x = map lookupSequenz . unpackSequenz unpackGenom $ x --lookupSequenz :: String ->