title: Does `tail call optimization` work?
body: <p><code>index.js</code>:</p>
  
  <pre><code>function factorial(n, total) {
    if (n === 1) return total;
    return factorial(n - 1, n * total);
  }
  
  console.log(factorial(70000, 1))
  </code></pre>
  
  <p>And I run it like this: </p>
  
  <pre><code>node --harmony_tailcalls index.js      
  </code></pre>
  
  <p>But it still give me an error:</p>
  
  <pre><code>function factorial(n, total) {                                                                                                                                                                                                                          
                ^                                                                                                                                                                                                                                     
  
  RangeError: Maximum call stack size exceeded  
  </code></pre>
  
  <p>why? I read this <a href="https://stackoverflow.com/questions/23260390/node-js-tail-call-optimization-possible-or-not">Node.js tail-call optimization: possible or not?</a> , but still not work.</p>