:todo better explanations
The scope of this section is to explain the differences in theory and implementation for what happens with the parameters of a function upon calling.
In detail the parameters can be seen as variables before the function call and inside the function, where the visible behaviour and accessibility to these variables differs with the method used to hand them over.
Additionally, the reusability of variables and their respective values after the function call also is explained by this topic.
Call by value