Mutual recursion: Difference between revisions

Content added Content deleted
(→‎{{header|jq}}: usual inner function)
m (→‎{{header|Sidef}}: updated code)
Line 2,591: Line 2,591:


=={{header|Sidef}}==
=={{header|Sidef}}==
<lang ruby>func F(){};
<lang ruby>func F(){}
func M(){};
func M(){}
 

F = func(n) { n > 0 ? (n - M(F(n-1))) : 1 };
F = func(n) { n > 0 ? (n - M(F(n-1))) : 1 }
M = func(n) { n > 0 ? (n - F(M(n-1))) : 0 };
M = func(n) { n > 0 ? (n - F(M(n-1))) : 0 }
 

[F, M].each { |seq|
[F, M].each { |seq|
(0..19).map {|i| seq.call(i)}.join(' ').say;
{|i| seq.call(i)}.map(^20).join(' ').say
}</lang>
}</lang>
{{out}}
{{out}}