LYHG[^1]은 2011년에 처음 나왔습니다. 출간 당시에 하스켈 컴파일러 GHC 메이저 버전은 7
이었습니다.
그런데 2018년에 GHC 8.4.1이 나오면서 Semigroup
이 Monoid
의 슈퍼 클래스가 됩니다.
그래서 책에 나온 예제를 그 이후 버전으로 실행 할 경우 에러가 납니다.
책에 나온대로 되지 않으면 진도를 못나가는 저와 같은 완벽주의자를 위해 해결 방법을 소개 합니다.
카테고리에서 주로 사용하는 도구는 아래와 같다.
respondPalindromes :: String -> String | |
respondPalindromes = | |
unlines . | |
map (\xs -> if isPal xs then "palindrome" else "not a palindrome") . | |
lines | |
isPal :: String -> Bool | |
isPal xs = xs == reverse xs | |
main = interact respondPalindromes |
포커 패를 입력하면 결과를 알려주는 프로그램을 하스켈로 구현하는 방법을 대화식으로 알려주는 책이다.
아니 반대로 하스켈을 소개하기 위해서 포커를 소재로 한 것일 뿐인 것 같다 ㅎ
총 79쪽이라 하루면 다 읽겠지 방심하고 시작했는데 사흘 정도 걸렸다.
책은 여기서 구매했다.