Closed
Description
A lot of library operations on strings and lists would be more easily expressed using a Python (etc.) like "slice operator".
T operator [:]({int start, int end});
void operator[:]=(var value, {int start, int end});
This would replace String.substring with [:], make it easy to add List.subList/replace List.getRange with [:], use [:]= to replace insertRange.
Both parameters are optional, and usually default to start = 0 and end = length of sequence if omitted.