procedure main(arglist) every write(F(!arglist)) # F of all arguments end procedure F(n) if integer(n) >= 0 then return (n = 0, 1) | n - M(F(n-1)) end procedure M(n) if integer(n) >= 0 then return (0 = n) | n - F(M(n-1)) end