-- |Break down the input into a list of lines, paired them up with line
-- numbers, and drop all comment and empty lines.
mkLines :: String -> [Line]
mkLines s = filter (not . isComment . snd) (zip [1..](lines s))
mkLines :: String -> [Line]
mkLines s = filter (not . isComment . snd) (zip [1..](lines s))
mkLines s = filter (not . isComment . snd) (zip [1..](lines s))