integer identity(integer x) { x; } integer sum(integer c) { integer s; s = 0; while (c) { s += c; c -= 1; } s; } real time_f(integer (*fp)(integer), integer fa) { date f, s; time t; s.now; fp(fa); f.now; t.ddiff(f, s); t.microsecond / 1000000r; } integer main(void) { o_real(6, time_f(identity, 1)); o_text(" seconds\n"); o_real(6, time_f(sum, 1000000)); o_text(" seconds\n"); 0; }