News for hackers. Stuff that matters.
Re:Stack Free Recursion (1995) by segmondy on Sunday November 09, 2014 @02:07PM (#8580547)
This was 1995, Outside of Prolog, LISP, Scheme, and other exotic languages, what popular languages of that era offered TC? (C, Pascal, C++, BASIC, FORTRAN, etc) didn't.
Re:Stack Free Recursion (1995) by dragonwriter on Monday November 10, 2014 @10:18AM (#8583932)
Tail call optimization, strictly speaking, isn't a language feature (though a language standard can require it in conforming implementations, as Scheme standards have. Which brings me to:

> (C, Pascal, C++, BASIC, FORTRAN, etc) didn't.

I'm not sure that's true. gcc, in optimizing modes, could do at least tail recursion elimination at least as far back as 1999, and does more now. (The earliest reference I can find refers to gcc 2.95.3, but its not clear to me if that's the first version that did it, or just the earliest version on which the writer tested and confirmed the behavior.)

Outside of a handful of languages, tail call elimination in either restrictive (e.g., tail recursion only) or general forms is an optional optimization rather than an essential behavior.

Re:Stack Free Recursion (1995) by icarot on Monday November 10, 2014 @09:53AM (#8583779)
Yeah. Most languages don't. Python and Javascript compilers still don't and Emacs LISP still doesn't.