I've always considered these collections (the entire namespace) to be unfortunately misnamed.
I've had to explain a lot of times, especially to polyglot co-workers that might not have used C# for ages, that they should not be the default choice and very seldom used, if not most likely never unless you have some really special use-cases, like massive thread-safe updates of ASTs etc. like they were designed for when Roslyn was developed.
Apart from `ImmutableArray<T>` (which probably shouldn't live with the other ones), they are _meant_ to be updated.
Perhaps they should've been named Copy-on-Write Collections or something like that instead, even though that's a leaky name.
moogly•1mo ago
I've had to explain a lot of times, especially to polyglot co-workers that might not have used C# for ages, that they should not be the default choice and very seldom used, if not most likely never unless you have some really special use-cases, like massive thread-safe updates of ASTs etc. like they were designed for when Roslyn was developed.
Apart from `ImmutableArray<T>` (which probably shouldn't live with the other ones), they are _meant_ to be updated.
Perhaps they should've been named Copy-on-Write Collections or something like that instead, even though that's a leaky name.