[Haskell] 고차함수와 람다

[원본 링크]

다른 함수를 인자로 받아서 처리하는 함수를 고차함수라 한다.

상당수의 언어들이 그렇듯이, 하스켈도 함수를 객체로 사용할 수가 있다.

아래 코드는 고차함수 boomer의 호출에 printer 함수를 넘겨주는 코드다. image

image

람다식(익명함수)
근데 여기서 printer는 한번만 사용하고 말 함수였다. 딱 한번 boomer에 넘기기 위해서.
이럴 경우에는 람다식을 통해 더욱 높은 가독성을 추구해볼 수 있다.

람다식은 백슬래시()로 시작한다.
\인자1 인자2... -> 반환식

위의 코드를 람다식 사용 코드로 바꾸면 아래와 같이 된다. image