Make `splice` configurable

In line with the standard Swift implementation.