pub type Ctrl(a) { Pure(a) Yield( marker: String, op: fn(fn(a) -> Ctrl(a)) -> Ctrl(a), cont: fn(a) -> Ctrl(a), ) }
Pure(a)
Yield( marker: String, op: fn(fn(a) -> Ctrl(a)) -> Ctrl(a), cont: fn(a) -> Ctrl(a), )
pub fn main() -> Nil
pub fn mprompt(marker: String, ctl: Ctrl(a)) -> Ctrl(a)
pub fn prompt(marker: String, action: fn() -> Ctrl(a)) -> Ctrl(a)
pub fn yield(marker: String, op: fn(fn(a) -> Ctrl(a)) -> Ctrl(a)) -> Ctrl( a, )