再帰の除去


fact(10)の実行結果


このプログラムのソース

(再帰除去の途中段階)
function aux(n, c) {
  return function(r) { return c(n*r); }; 
}

function fact(n, c) {   
  while(n>0) {
    c = aux(n, c);
    n--;
  }
  return c(1);
}

Koji Kagawa (kagawa@eng.?????)