List.delete_at/2

defmodule List do
  def delete_at(list, index)
end

Produces a new list by removing the value at the specified index. If index is out of bounds, the original list is returned.

Negative indices indicate an offset from the end of the list.