¿Mutar un ArraySlice instanciaría una nueva instancia de matriz?

var absences = [0, 2, 0, 4, 0, 3, 1, 0]
let midpoint = absences.count / 2

var firstHalf = absences.prefix(upTo: midpoint)
let secondHalf = absences.suffix(from: midpoint)

Cita de Apple:

Ni las rebanadas firstHalf ni secondHalf asignan ningún almacenamiento nuevo propio. En cambio, cada uno presenta una vista sobre el almacenamiento de la matriz de ausencias.

Cuando trato de mutarfirstHalf como el seguiente:

firstHalf[1] = 19

los valores defirstHalf cambia pero la matriz originalabsences sigue siendo el mismo (firstHalf[1] es igual a 19 mientrasabsences[1] es igual a 2) Entonces, ¿qué sucede en el fondo? ¿Ejecuté una nueva matriz al mutar el segmento de la matriz? Gracias por adelantado.

Respuestas a la pregunta(2)

Su respuesta a la pregunta