-- Get a single diagonal. x,y == starting point
diagonal n grid x y = if n == 0
                         then []
                         else [(grid !! x )!! y] ++ diagonal (n-1) grid (x+1) (y+1)
diagonal n grid x y = if n == 0
                         then []
                         else [(grid !! x )!! y] ++ diagonal (n-1) grid (x+1) (y+1)
diagonal n grid x y = if n == 0
                         then []
                         else [(grid !! x )!! y] ++ diagonal (n-1) grid (x+1) (y+1)