logoalt Hacker News

toast0yesterday at 7:44 PM1 replyview on HN

> But the compiler controls both the caller and callee.

Why? In functional languages, it's common for an exported function from one compilation context to tail call into an exported function from another.


Replies

fluoridationyesterday at 7:50 PM

Functional languages may be designed to support TCO from the ground up, up to supporting it across module boundaries. C is not like that, and calling into an external module necessarily grows the stack.

show 1 reply