This is probably a basic question for some, but it affects how I design a piece of my program.
I have a single collection of type A:
IEnumerable
Making a new object that is a reference type is non-trivial. LINQ would have no idea how to do it. LINQ always returns the same instances when dealing with reference types.