title: Difference between Call-By-Name and Call-By-Reference
body: <p>Parameter passing techniques:</p>
  
  <p>From what I can gather on these two techniques.</p>
  
  <p>Call By Reference:</p>
  
  <p>The address location of the variable is being passed into the function, thus within the local scope of the function, any changes to the value of the local variable will change the value of the original variable, since they are pointing to the same place.</p>
  
  <p>Call By Name:</p>
  
  <p>The actual variable is being passed into the function.  Any changes to the value of the variable inside the local scope of the function will also be reflected on the outside of the function.</p>
  
  <p>It seems to me, these two parameter passing techniques accomplish the same thing?  Both of them act on the original variables contents.  Do I have my definitions wrong? Am I thinking about this in the wrong way?</p>