I’m doing AoC in Haskell to learn the language. These are my solutions. Day 1 import Data.List importqualified Data.Map as Map f xs =let x1s = sort $ map fst xs x2s = sort $ map snd xs diff x y = abs (x - y) in sum $ zipWith diff x1s x2s counter=Map.fromListWith (+) . map (,1) sim xs =let c = counter (map snd xs) in sum [x *Map.findWithDefault 0 x c | x <- map fst xs] main=do l <- readFile "data1.txt"let xs = [(read x, read y) | [x, y] <- map words (lines l)] print (f xs) print (sim xs) Pre...