프로그래밍 언어에서는 함수 Func(Type a,...)가 함수 자체를 직접 또는 간접적으로 호출하는 경우 해당 함수를 재귀 함수라고 합니다. 재귀 함수는 인라인 함수로 정의할 수 없습니다. 수학적으로 재귀 함수의 정의는 다음과 같습니다. 특정 함수 f(x)에 대해 해당 도메인은 집합 A이고 집합 A의 특정 값 X0에 대해 해당 함수 값 f(x0)는 다음과 같이 제공됩니다. f(f(x0))이면 f(x)를 재귀 함수라고 합니다.