[Erlang] 분기와 재귀

[원본 링크]

if문
얼랭은 분기 구문 if를 지원한다.
하지만 일반적인 명령형 언어들의 if와 구조가 좀 다르다.
else구문은 따로 없고, 여러개의 조건식과 반환식의 쌍을 가질 수 있다.
;로 구분하고, 마지막은 end로 표시한다.

if** **
조건식1 -> 반환식1;
조건식2 -> 반환식2;
...
조건식N -> 반환식N
end

간단한 예시다.
두번째 조건식은 true를 써놨는데, 그냥 else라고 생각하면 된다. image

image

이제 이걸 응용하면 재귀함수의 구현도 가능하다. image

image 그리고 아무것도 반환하지 않는단걸 표시하기 위해 void를 썼는데, 저거말고 unit이나 not_ok를 써도 된다.