"I=5, akkor az mindig is annyi lesz, I++ meg I=6 nincs"
Ez minden funkcionális nyelvben így van, kelemzol arra gondolt, hogy modnjuk inkább fold-ot (vagy reduce - nyelve válogatja a nevet) használna a faktoriálisra.
http://en.wikipedia.org/wiki/Fold_%28higher-order_function%29