deleteAt :: Int -> [a] -> [a]
deleteAt i xs = let (as,bs) = splitAt i xs
                in init as ++ bs
deleteAt :: Int -> [a] -> [a]
deleteAt i xs = let (as,bs) = splitAt i xs
                in init as ++ bs
deleteAt i xs = let (as,bs) = splitAt i xs
                in init as ++ bs