Of course, if you actually <i>use</i> this you can smash the stack -- Python doesn't currently have any kind of tail call optimization. (That factorial function isn't tail-recursive anyway, though.)<p>It doesn't look like Ruby has tail-call optimization, either. Lua does...what other primarily-scripting (i.e., not Scheme or Haskell) languages do?