хвостовая рекурсия и фибоначчи

Я смотрел этот сайт: http://rosettacode.org/wiki/Fibonacci_sequence#JavaScript и увидел эту программу :

function fib(n) {
  return function(n,a,b) {
    return n>0 ? arguments.callee(n-1,b,a+b) : a;
  }(n,0,1);
}

Как это работает, какие два аргумента (а и б) помогают. Я отследил это и до сих пор не могу понять, как это работает

7
задан qwertymk 29 July 2011 в 18:09
поделиться