Question: what is the difference between a call-by-value and call-by-name parameter?
Answer: In other words, the call by value function arguments are evaluated once before entering the function, but the call by name function arguments are evaluated inside the function only when they are needed. ... You can force a parameter to be call by name by using the double arrow when defining the function.