-
-
모던 C++로 배우는 함수형 프로그래밍 - 커링, 메타프로그래밍 등 C++와 함수형 프로그래밍의 핵심 ㅣ acorn+PACKT
위스누 앤거로 지음, 김현욱 옮김 / 에이콘출판 / 2018년 3월
평점 :
제목처럼 모던 C++로 함수형 프로그래밍을 할 수 있도록 안내하는 책이라 C++을 알고 있다는 전제하에 설명하고 있다. 함수형 프로그래밍에 매우 자주 등장하는 동작들 filter, map, fold 가 C++ 11에 추가된 기능 중 어떤 것과 매칭이 되는지 설명하고 고차 함수와 일급 객체의 차이도 설명한다. 아직 C++이 지원하지 않는 지연 평가는 직접 구현으로 처리하는 방법을 안내한다.
템플릿을 이용한 메타 프로그래밍이 컴파일 타임에 코드를 생성하니 불변이라는 이유로 함수형 프로그래밍과 연관시키지만, 딱히 와닿지는 않는다. 동시성 챕터는 뻔한 스레드 기초만 좀 언급하고 넘어간다. 함수형이 다시 수면위로 올라온 가장 큰 이유 중 하나가 상태를 갖지 않는 함수와 불변 객체들을 활용한 lock free 동시성인데 뜬금없이 lock object를 설명하고 끝낸다.
부분 코드만 보여줘도 충분한 것을 계속 전체 코드를 보여주면서 내용 없이 책 분량만 늘었고, 2~5장까지의 내용만 함수형 프로그래밍이라는 타이틀에 부합한다고 생각한다.