Heretical thoughts: OOP with Elixir

So I’m reading a tutorial and it’s showing how to rebind a variable (a style I don’t like):

person = Map.put(person, :region, "west-1")

And it struck me how much it looks like de-sugared Python. I.e., with a theoretical OOP syntactic sugar layer, we could do this:

person.put(:region, "west-1")

IMO, that’s more concise and expressive. And the OOP syntax would simply the search for compatible functions. E.g., it could combine both List and Enum for lists.

So what are the arguments against this kind of object-oriented syntax? Is rebinding a slippery slope to difficult-to-understand code? What are the strengths of the more repetitive functional syntax? Is it the change in how we think about data and functions as separate?