On Tuesday, 22 July 2014 at 21:23:33 UTC, Timon Gehr wrote:
On 07/22/2014 09:42 PM, Walter Bright wrote:
The point was not at all to criticize Haskell. The point was that D does not need tail recursion because D supports writing loop constructs.

Tail call support is still useful. Looping is not the main reason for supporting tail calls. Eg. a tail call might be indirect and only sometimes recurse on the same function and sometimes call another function.

Indeed, I recall Matthias Felleisen wrote that OOP makes no sense without TCO because methods will indirectly call each other. See

https://blogs.oracle.com/jrose/entry/tail_calls_in_the_vm#comment-1259314984000
http://www.eighty-twenty.org/index.cgi/tech/oo-tail-calls-20111001.html

While I don't care much for OOP, D is supposed to support that style.

Reply via email to