MK
Size: a a a
MK
AV
A
AV
cancelled <- newTVarIO False
x <- registerDelay 1000
...
atomically $
asum
[ readTVar x >>= check
, readTVar cancelled >>= check
]
AV
\x -> when x retry
вместо негоA
AV
join $ atomically $ asum
[ readTVar x >>= check >> pure f
, readTVar cancelled >>= check >> pure (pure ())
]
A
\x -> when x retry
вместо негоAV
AV
AV
AV
JS
JS
func a =
let b = a * 2 in
let c = b * 3 in
(b + c, b - c)
func = \a ->
((a * 2) + (b * 3), (a * 2) - (b * 3))
(let b = a * 2 in foo) = (\b -> foo) (a * 2)
JS
а
(let b = a * 2 in foo) = (\b -> foo) (a * 2)