A
i'll'never'exit :: IO Void
i'll'never'exit = fix $ \loop -> do
...
loop
Size: a a a
AV
i'll'never'exit :: IO Void
i'll'never'exit = fix $ \loop -> do
...
loop
AV
race_ (absurd <$> i'll'never'exit) ...
R
race_ (absurd <$> i'll'never'exit) ...
IO void
AV
R
(x :: Void) <- i'll'never'exit
when (absurd x) $ putStrLn "HellNo!"
AV
R
Void
в негативной позиции и void
в позитивнойA
i'll'never'exit :: IO Void
i'll'never'exit = fix $ \loop -> do
...
loop
AA
к
Void
? (pipes — плохой пример, сразу говорю)empty :: m Void
m a
AA
IK
empty :: m Void
m a