Thực Hành Monad trong Haskell

Monad increase n = Just (n + 1) addOne n = [n + 1] main = do print $ Nothing >> (Just 0) -- Nothing print $ (Just 0) >> (Nothing :: Maybe Int) -- Nothing print $ (Just 0) >> Nothing >> (Just 1) -- Nothing print $ (Just 0) >> (Just 1) >> (Just 2) -- Jus ...

Đăng vào ngày 23 tháng 6 lúc 13:15

Ghi chú học ngôn ngữ Haskell (30): MonadCont, Cont, và ContT

Lớp kiểu MonadCont class Monad m => MonadCont m where callCC :: ((a -> m b) -> m a) -> m a instance MonadCont (ContT r m) where callCC = ContT.callCC class Monad m => MonadCont m where MonadCont là một lớp kiểu, nó định nghĩa giao diện chung cho các Monad như ContT đóng gói hàm CPS (Continuation Passing Style). MonadCo ...

Đăng vào ngày 8 tháng 6 lúc 18:56