Effects in the type
Pure by default: touching IO needs !io, and effects you declare are answered by with handle.
effect Ask {
fn ask() -> Int
}
fn total() -> Int !Ask =
ask() + ask()
pub fn main() -> Unit !io = {
with handle Ask { ask() => 21 }
println("${total()}")
}