Entries from 2013-12-15 to 1 day
merge :: Ord a => [a] -> [a] -> [a] merge [] xs = xs merge xs [] = xs merge (x:xs) (y:ys) | x <= y = x : merge xs (y:ys) | otherwise = y : merge (x:xs) ys halve :: [a] -> ([a], [a]) halve xs = (take n xs, drop n xs) where n = length xs `di…