You want function [inlining][1], and most ([optimizing][2]) compilers are doing that. <sup>I am a bit focusing on [functional programming][3] style, since you tagged your qestion as such.</sup> Notice that **you don't need to have any [call stack][4]**. You could use only the heap (then you need an efficient [garbage collector][5]). So, take a **look at [continuations][6]** and read more about [continuation passing style][7] (CPS) and [CPS transformation][8]. (intuitively, you could use continuation [closures][9] as reified "call frames" allocated in the heap). Then you need an efficient garbage collector. Andrew Appel wrote a book [*Compiling with Continuations*][10] and an old paper [*garbage collection can be faster than stack allocation*][11]. See also A.Kennedy's paper (ICFP2007) [*Compiling with Continuations, Continued*][12] I also recommend reading Queinnec's [Lisp In Small Pieces][13] book, which has several chapters related to continuation & compilation. Notice also that some languages (e.g. [Brainfuck][14]) or abstract machines (e.g. [OISC][15]) don't have any calling facilities but are still [Turing-complete][16], so you don't (in theary) even need any function call mechanism, even if it is extremely convenient. [1]: http://en.wikipedia.org/wiki/Inline_expansion [2]: http://en.wikipedia.org/wiki/Optimizing_compiler [3]: http://en.wikipedia.org/wiki/Functional_programming [4]: http://en.wikipedia.org/wiki/Call_stack [5]: http://en.wikipedia.org/wiki/Garbage_collection_%28computer_science%29 [6]: http://en.wikipedia.org/wiki/Continuation [7]: http://en.wikipedia.org/wiki/Continuation-passing_style [8]: http://matt.might.net/articles/cps-conversion/ [9]: http://en.wikipedia.org/wiki/Closure_%28computer_programming%29 [10]: http://www.cambridge.org/us/academic/subjects/computer-science/programming-languages-and-applied-logic/compiling-continuations [11]: https://www.cs.princeton.edu/~appel/papers/45.ps [12]: http://dl.acm.org/citation.cfm?id=1291179 [13]: http://pagesperso-systeme.lip6.fr/Christian.Queinnec/WWW/LiSP.html [14]: http://en.wikipedia.org/wiki/Brainfuck [15]: http://en.wikipedia.org/wiki/One_instruction_set_computer [16]: http://en.wikipedia.org/wiki/Turing_completeness