RosettaCodeData/Task/Mutual-recursion/Groovy/mutual-recursion-1.groovy

4 lines
153 B
Groovy

def f, m // recursive closures must be declared before they are defined
f = { n -> n == 0 ? 1 : n - m(f(n-1)) }
m = { n -> n == 0 ? 0 : n - f(m(n-1)) }