title: Call by name vs call by macro expansion
body: <p>In non strict evaluation languages, what are the differences and advantages/disadvantages of using <em>call by name</em> vs <em>call by macro expansion</em>?</p>
  
  <p>Could you provide an example that explains both evaluation strategies?</p>
  
  <p>Thanks!</p>