I don't understand why exactly is happening/why I am not getting an error when doing somefunc() = 100? Now when I "call" somefunc, it outputs 100. I also tried just doing somefunc = 100, which then gives me an error. After reassigning somefunc() to 100, when I just write somefunc, it still says it is a function.
What exactly is happening here? Why do I get an error when reassigning somefunc to a value, but when reassigning somefunc(), not? Why does somefunc still say it is a function, even after reassigning it?