female = null #yes, this is necessary male = { n | true? n == 0 { 0 } { n - female male(n - 1) } } female = { n | true? n == 0 { 1 } { n - male female(n - 1 ) } } p 0.to(20).map! { n | female n } p 0.to(20).map! { n | male n }