But does it retain the python semantics?
for example:<p><pre><code>  def fac(n):
      if n == 0 :
          return 1
      else:
          return n * fac(n-1)

  print fac(100)
</code></pre>
will yield a big string, while any naive C++ translation will print the string &quot;0&quot; due to overflow.