Variadic fixed-point combinator: Difference between revisions

Content added Content deleted
Line 143: Line 143:
end function
end function


function c1(sequence f3, integer n, d)
function c1(sequence f, integer n, d)
if n=1 then return d end if
if n=1 then return d end if
return call_lambda(f3[2+odd(n)],{n,d+1})
return call_lambda(f[2+odd(n)],{n,d+1})
end function
end function


function c2(sequence f3, integer n, d)
function c2(sequence f, integer n, d)
return call_lambda(f3[1],{floor(n/2),d})
return call_lambda(f[1],{floor(n/2),d})
end function
end function


function c3(sequence f3, integer n, d)
function c3(sequence f, integer n, d)
return call_lambda(f3[1],{3*n+1,d})
return call_lambda(f[1],{3*n+1,d})
end function
end function