펑터(functor), 고차 함수(higher-order function), 모나드(monad), 애플리커티브(applicative) 등과 같은 개념들을 들어봤을 것이다. 이 모든 것은 단지 도구일 뿐이다. 유용한 도구이긴 하지만, 그 자체로 코드를 더 함수형으로 만들지는 않는다. 이 책에서도 이러한 도구들을 다루겠지만, 이를 사용하지 않고도 함수형 코드를 작성할 수 있다.

    그렇다면 이러한 도구들이 왜 필요할까? 앞으로 살펴보겠지만 대부분의 코드를 함수형으로 유지하는 것은 어려울 수 있다. 그래서 이 주제를 다룬 수많은 책이 출판되기도 했다. 이런 도구는 아주 유용하다.

    우리는 이 책을 통해 이러한 도구를 사용하는 방법을 배울 것이다.

     

    재사용은 정말 과대평가된 것인가?

    함수형 프로그래밍을 채택하면 의도가 명확하고 숨겨진 부수 효과가 없는 많은 작은 함수와 데이터 구조로 이뤄진 코드 기반을 만들 수 있다. 이렇게 하면 매번 새로운 코드를 작성하는 대신, 같은 함수를 다른 곳에서 재사용하고 결합해 새로운 행동을 생성할 수 있다.

    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.