I might lean towards a SortedSet; I'm not sure if it'd be a perfect match for the use case though. You do seem to be right though; I was expecting there to be an ordered immutable data structure for our uses, but alas, it appears not to exist...