Haskell: различия между версиями
| Строка 129: | Строка 129: | ||
<pre> | <pre> | ||
fac n = do cont <- callCC $ \h -> do | fac n = do cont <- callCC $ \h' -> do | ||
when (n <= 1) | when (n <= 1) $ Cont $ const 1 | ||
h n | h' n | ||
return cont | return cont | ||
`runCont` (* (fac $ n - 1)); | `runCont` (* (fac $ n - 1)); | ||