를 인쇄 나는이하스켈, fmap 함수 결과
putStrLn <- fmap (replicate 3) [1,2,3,4]
처럼 fmap 함수의 결과를 인쇄하고자하지만 putStrLn 구문 분석 오류가 발생했습니다. 도와주세요.
감사합니다.
를 인쇄 나는이하스켈, fmap 함수 결과
putStrLn <- fmap (replicate 3) [1,2,3,4]
처럼 fmap 함수의 결과를 인쇄하고자하지만 putStrLn 구문 분석 오류가 발생했습니다. 도와주세요.
감사합니다.
올바른 구문은 여기에 있습니다 :
putStrLn $ show $ fmap (replicate 3) [1,2,3,4]
하거나, 심지어 짧은 :
print $ fmap (replicate 3) [1,2,3,4]
감사합니다! ! ,,,,,,,,,,,,,,,,,,, – BufBills
완전하지 아스카가 찾고있는 대답,하지만이 유머러스하게 자신의 구문 오해가 여전히 유효 하스켈 코드입니다 :
위의 예에서는 목록 모나드와 값 putStrLn
을 사용합니다. 변수 (기대할 수있는 IO 작업이 아님). 리스트 모나드를 사용하는 대신 지능형리스트로 표현하면 그것은 사람들에게 더 적합 할 수 있습니다 : 당신이 목록에`지도`를 사용할 수 있습니다
> [ putStrLn | putStrLn <- map (replicate 3) [1,2,3,4]]
[[1,1,1],[2,2,2],[3,3,3],[4,4,4]]
참고 : (하지만'fmap'도 정확) –