제티 자체는 함수적인 방식으로 작성되지 않았는데, 내부의 웹 서비스가 함수적으로 작동하지 않는다는 점이 중요할까? 사실 별로 중요하지 않다. 우리는 기본 구현이 함수적인지 여부에 대해 신경 쓰지 않는다. 인터페이스가 함수적이고 그 위에 함수적인 방식으로 컴포넌트를 작성할 수 있다면 상관없다.
Note ≡ | 결과를 따져봤을 때 우리는 이론적인 ‘수학적 순수성’을 추구하는 것이 아니다. 단지 함수형 프로그래밍의 힘을 활용해 우리의 삶을 더 쉽게 만드는 방법으로 구성(composition6)의 힘을 활용하고 싶다.
지금까지는 라이브러리의 함수가 함수형의 규칙을 지켰기 때문에(즉, 참조적으로 투명하므로) 함수를 어떤 스타일로 작성했는지에 대해서는 신경 쓰지 않았다. 충분히 깊이 파고들면 이 모든 것이 기계어로 컴파일되며 결국에는 전혀 함수적이지 않게 된다.
라이브러리를 선택할 때는 그 라이브러리를 사용해도 기존 코드에 문제가 발생하지 않는지, 애플리케이션의 아키텍처를 원치 않는 방식으로 변경하지 않는지 확인하는 것이 정말 중요하다. 이를 염두에 둘 때 함수형 라이브러리가 일반적으로 객체 지향 라이브러리보다 사용과 통합이 더 쉽다. 0장에서 언급한 고릴라와 바나나를 기억하라. 부수 효과에 대해 걱정할 필요가 없고 가변적인 상태를 지닌 객체에 대해 걱정할 필요가 없다는 것은 서드파티 라이브러리를 채택할 때의 큰 이점이다.