What you describe can be easily explained by analogy using a simpler example:
Starting with variables a
and b
, you go to c
and d
, which are assigned the same value. The conclusion here is that you can assign one value to two variables, and the expression will be evaluated from right to left, so, in fact, it equally assigns the values ββof two variables separately. However, this does not mean that transcoding one will also change the other. Finally, see what happens to e
and f
. They are assigned a function instead of a value, so you can call them as if they were functions.
Short version : expression resolves from right to left. Assignment is carried out by value, not by reference, which means that changing one of the variable values ββwill not affect the others. Finally, if you assign a function to your variables, you can use their names to call the function, which is their value.
source share