a[1..10] # elements from 1 to 10, including 10
a[1...10] # elements from 1 to 9; k...n is a half open range notation
a[3, 5] # 5 elements, starting from position 3
Arrays are still zero based, but I feel this is more a homage to for- and while- loops from older languages.(for (i = 0; i < n; i++) is just a very nice notation, and so is while (i < n))