True, no direct equivalents for associateBy and associateWithValue. But
"collectEntries{ [it.toLowerCase(), it] }" is pretty succinct.
If you wanted to extend with just one new extension of collectEntries, I think
".collectEntries(keyFun, Function.identity())" and
".collectEntries(Function.identity(), valFun)" is the associateBy and
associateWithValue. Java streams gives you a lot of options here. Guava
provides "uniqueIndex" to do the same, but provides stronger checks on key
uniqueness.
https://guava.dev/releases/23.0/api/docs/com/google/common/collect/Maps.html#uniqueIndex-java.lang.Iterable-com.google.common.base.Function-