RosettaCodeData/Task/Factorial/FunL/factorial-3.funl

9 lines
192 B
Plaintext

def factorial( n )
| n >= 0 =
def
fact( acc, 0 ) = acc
fact( acc, n ) = fact( acc*n, n - 1 )
fact( 1, n )
| otherwise = error( 'factorial: n should be non-negative' )