많은 언어에서 꼬리 재귀 최적화 (Tail Call Optimization) 을 지원
최적화를 진행함으로써 재귀함수를 루프형태가 아닌 선형 알고리즘으로 재해석 => 스택메모리가 넘치는 것을 방지 할 수 있다.
꼬리재귀가 되려면 함수 본인 만을 호출해야함.