Artifact Content
Not logged in

Artifact 6b6d7ff7af65edf2cbb5a8386dfcb7c32903db6d


#
# Not at all a good example of the usage of layers, but anyway...
#

@@3(x){x};
@@5(x){x};
@@15(x){x};
def incr(x) { x+1 };
@ 3 incr(x) {@value( if(@ 3(x)+1< 3){@ 3(x)+1}else{0} )};
@ 5 incr(x) {@value( if(@ 5(x)+1< 5){@ 5(x)+1}else{0} )};
@15 incr(x) {@value( if(@15(x)+1<15){@15(x)+1}else{0} )};

def fb(n @value @3 @5 @15) {
  print(
	if( @15(n) ) { if( @5(n) ) { if( @3(n) ) { n } else { "Fizz" } } else { "Buzz" } } else { "FizzBuzz" }
  );
  fb(incr(n))
};

fb(0)