Put/update deep inside nested maps (and auto-create intermediate keys)

Nobody is stopping you from creating helpers that you use because that is a simplifying assumption that you want to make in your own code and your own structures.

But in general terms looking at just [:a, :b, :c] the types of the values referenced by :a and b: can’t be known unless they already exist - with :c the type is known because you are giving it the value. Map simply manages the keys and the values - it doesn’t want to make any assumptions about the type of values it manages so that it can be generic.