無意味にマクロで。
macro_rules! fib { ( $n:expr ) => {{ let (mut x, mut y) = (1, 0); for _ in 0..$n { let tmp = box x; x += y; y = *tmp; } y }}; } fn main() { println!("{}", fib!(10)); }
( ՞ਊ ՞) :~/dev $ rustc --version # ちと古い rustc 1.0.0-nightly (4db0b3246 2015-02-25) (built 2015-02-26) ( ՞ਊ ՞) :~/dev $ rustc fib.rs ( ՞ਊ ՞) :~/dev $ ./fib 55