ズンドコキヨシマシーン
カウントアップする機械、ドコ命令はカウントが4未満ならリセットするが4以上になった場合、キヨシ命令を実行する
class ZunDokoMachine
def initialize
@counter = 0
end
def ズン
puts __method__
@counter += 1
end
def ドコ
puts __method__
if @counter < 4
@counter = 0
else
キヨシ
end
end
private
def キヨシ
puts __method__
exit
end
end
ZunDokoMachine.new.instance_eval { loop { send(self.class.public_instance_methods(false).sample) } }
実行例
_╰╰, /バショ % ~/tmp
_/o ŏァ / タイチョー% ヤバイ
∈ミ;ノ,ノ \コマンド% ruby hikiyoshi.rb
ドコ
ズン
ズン
ドコ
ドコ
ズン
ドコ
ドコ
ドコ
ズン
ドコ
ドコ
ズン
ズン
ズン
ドコ
ズン
ズン
ズン
ズン
ドコ
キヨシ