0
부분적으로 적용된 함수 are instances of the MonadReader
이므로 다음 코드가 잘못된 이유는 무엇입니까? MonadReader
의 인스턴스가되는모나드 리더 및 함수의 부분 적용
runReader (\x -> x + 2) 4
또는
runReader (\x -> pure $ x + 2) 4
부분적으로 적용된 함수 are instances of the MonadReader
이므로 다음 코드가 잘못된 이유는 무엇입니까? MonadReader
의 인스턴스가되는모나드 리더 및 함수의 부분 적용
runReader (\x -> x + 2) 4
또는
runReader (\x -> pure $ x + 2) 4
은 (local
, ask
, asks
)는 "독자 운영"을 사용 할 수 있지만 runReader
는 Reader
의 유형을 실행하기위한 명시 적입니다.
readerFunction :: Int -> Int
readerFunction = do
x <- ask
pure (x + 2)
을 그러나 "를 실행"할 필요, 당신은 Reader
또는 ReaderT
입력 값으로 할 방법은 없습니다 :
그래서 예를 들어,이 때문에 monadReaderFun
의 작업을 수행 할 수 있습니다.