(assoc foo "bar"
(assoc (get foo "bar") "alice"
(assoc (get (get foo "bar") "alice") "bob" 12)))
vs foo.bar.alice.bob = 12; (assoc-in foo ["bar" "alice" "bob"] 12)
Of course, in clojure you mostly use :keywords instead "strings" as keys which has a ton of benefits.There's also specter if want something more powerful at the cost of an additional lib.
https://github.com/nathanmarz/specter https://www.youtube.com/watch?v=rh5J4vacG98
As opposed to what languages?