Thanks for the info.
LPC does a[x..<y] == a[x..sizeof(a) - y] so a[0..<1] is the whole string/array.
Do you know the rationale behind this? I can see the logic behind letting <-1 be the last element (at least in Pike where the single-element indexing operator works the way it does) and <0, but counting from 1 and upwards seems odd.