Кстати, заметил интересную штуку.
...
var Str := 'one,two,three';
var Words := Str.Split([',']);
...
Когда отладчик находится на второй строке, где заполняем массив, переменная Str - пустая, хотя на предыдущем шаге должна заполниться. И только когда мы обращаемся непосредственно к Str.Split, компилятор прыгает на первую строку обратно, где заполняет её))