blob: fec48a748c6fd39352a1f5723547eb03f1225f03 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
// -*- rust -*-
fn checktrue(bool res) -> bool {
assert (res);
ret true;
}
fn main() {
auto k = checktrue;
evenk(42, k);
oddk(45, k);
}
fn evenk(int n, fn(bool) -> bool k) -> bool {
log "evenk";
log n;
if (n == 0) {
be k(true);
}
else {
be oddk(n - 1, k);
}
}
fn oddk(int n, fn(bool) -> bool k) -> bool {
log "oddk";
log n;
if (n == 0) {
be k(false);
}
else {
be evenk(n - 1, k);
}
}
|