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