On 26/06/2019 08:34, Yanghao Hua wrote:
I find the objection reasoning very strange as none of the default behavior changed, and yet if you use this feature you do need to worry about the object behavior regarding assignment, this is true for descriptors and all other magics.
The problem is not the default behaviour. The problem is that the average reader of your code cannot know that something that appears to be an ordinary assignment has been redefined elsewhere to be something entirely herring. Your code stops being understandable to other people.
The thing I keep coming back to in this whole discussion is the Zen line "Explicit is better than implicit".
-- Rhodri James - Kynesim Ltd