Modelling application classes as immutable objects is a widely used pattern in Java and Kotlin which constantly gains adoption. We should allow creation of immutable collection types (Map, List, Set) through CollectionFactory or an adequate API that allows specification of the target type and the elements the result should contain.
It would be great to support:
- Java 9 immutable collections
- Google Guava collections
- Vavr Collections (previously JavaSlang)