This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
laboratoare:01-functii-recursive [2016/02/29 23:44] calin.cruceru [Tail recursion] |
laboratoare:01-functii-recursive [2016/02/29 23:45] (current) calin.cruceru [Tail recursion] |
||
---|---|---|---|
Line 232: | Line 232: | ||
<note important> | <note important> | ||
Folosirea unui acumulator în acest scop este un tipar des întâlnit, util pentru că poate permite reducerea spațiului de stivă necesar de la O(n) la O(1). Unele limbaje (e.g. C) nu garantează această optimizare, care depinde de compilator.\\ | Folosirea unui acumulator în acest scop este un tipar des întâlnit, util pentru că poate permite reducerea spațiului de stivă necesar de la O(n) la O(1). Unele limbaje (e.g. C) nu garantează această optimizare, care depinde de compilator.\\ | ||
- | Modul în care Haskell implementează tail-recursion o să fie mai clar când vom discuta despre modul de evaluare al funcțiilor. Tot atunci vom vedea și *capcanele* acestuia. | + | |
+ | Modul în care Haskell asigură tail-recursion o să fie mai clar când vom discuta despre modul de evaluare al funcțiilor. Tot atunci vom vedea și **capcanele** acestuia. | ||
</note> | </note> | ||