factorial(n) :=
factorialHelper(1, n);
factorialHelper(acc, n) :=
acc when n <= 0
else
factorialHelper(acc * n, n-1);