Ein Array-Objekt ist eine Referenz auf ein anderes Array-Objekt mit Längenangabe. Somit kann ein Bereich aus einem anderen Array übergeben werden.
func is code( par is int{} ); // automatisch ref, erhält also ein Array-Objekt
var is int{} = {1, 2, 3, 4, 5};
func( var{ 2..4 } ) ); // überträgt den Pointer var, den Pointer auf var[2] und 2 als Anzahl der Element, erhöht ggfs. den ref-Ptr von var und ruft die Funktion.
…func erhält so die Info, dass par bei Index 3 anfängt und 2 Elemente hat. Wird das Array weitergegeben, so wird Pointer var immer weitergegeben, damit - falls das Array anderswo gespeichert wird, der rc Ptr gesetzt werden kann. Wird das Array nicht ge'set'tet, die Funktion func für par also kein set oder Übergabe an eine Funktion, die set markiert hat, so kann die Übergabe von var weggelassen werden.