If you don't mind changing ntimes to not return a closure: fn ntimes<T>(f: &fn(T) -> T, times: uint, x: T) -> T { match times { 0u => x, _ => ntimes(|x| f(x), times - 1u, f(x)) } }
fn main() { println(format!("{:d}", ntimes(|k| k*2, 2u, 3))); } _______________________________________________ Rust-dev mailing list Rust-dev@mozilla.org https://mail.mozilla.org/listinfo/rust-dev