def fizzbuzz(i = 1,
   check = ->(i) { raise "stop" if i > 100; i + 1 },
   step  = ->(v = i) { i = check[i]; puts v },
   n_1 = step[],
   n_2 = step[],
   f_3 = step[:Fizz],
   n_4 = step[],
   b_5 = step[:Buzz],
   f_6 = step[:Fizz],
   n_7 = step[],
   n_8 = step[],
   f_9 = step[:Fizz],
   b10 = step[:Buzz],
   n11 = step[],
   f12 = step[:Fizz],
   n13 = step[],
   n14 = step[],
   z15 = step[:FizzBuzz],
   recur = (fizzbuzz(i) rescue nil)); end

fizzbuzz