Is there much benefit to
fact = lambda n: _if (n <= 1) (1) (lambda: n * fact(n-1))
over def fact(n):
if (n <= 1):
return 1
else:
return n * fact(n-1)
1 line vs 5 lines doesn't seem like an advantage to me when it takes pretty much the same amount of time to read and understand the complicated 1 liner.Is there more optimisation possible?