title: Call by name vs call by value in Scala, clarification needed
body: <p>As I understand it, in Scala, a function may be called either</p>
  
  <ul>
  <li>by-value or </li>
  <li>by-name</li>
  </ul>
  
  <p>For example, given the following declarations, do we know how the function will be called?</p>
  
  <p>Declaration:</p>
  
  <pre><code>def  f (x:Int, y:Int) = x;
  </code></pre>
  
  <p>Call</p>
  
  <pre><code>f (1,2)
  f (23+55,5)
  f (12+3, 44*11)
  </code></pre>
  
  <p>What are the rules please?</p>