Sub-ranges feel like quite an obscure feature of a language. But in Pascal they're an essential part of arrays
array ['a'..'z'] of Integer
So I'm filling out their implementation before I continue with arrays. The next step is the assignment validation when range checking is on.