OS�С�������夲���Ĥ��Ǥˡ�lleval�ˤ������줿�Τ��ѹ����ʤɡ�
node.js �Ϥ���ޤ���
(Java|ECMA)Script�μ�����SpiderMonkey����node.js���ѹ����ޤ�����
����ˤ�äơ����ޤ�ɸ����Ϥ���᥽�åɤ� print() �ǤϤʤ� console.log() �ˤʤ�ޤ���
for (var i = 1; i <= 30; i++) console.log (
i % 15
? i % 5
? i % 3
? i : 'Fizz'
: 'Buzz'
: 'FizzBuzz'
);
es6�⥵�ݡ��Ȥ������ä��Τǡ�node.js�ΥС�������0.11�Ǥ����������� js ���� es6 �Ȥ��뤳�Ȥˤ�ꡢ--harmony �դ��Ǽ¹Ԥ���ޤ���
function *fizzBuzz() {
for (var i = 1; i <= 30; i++) {
var fz = '';
if (i % 3 == 0) fz += 'Fizz';
if (i % 5 == 0) fz += 'Buzz';
yield fz || i;
}
}
for (n of fizzBuzz()) console.log(n);
Ruby 2.1 �� Refinements �Ϥ�ä� Refine ����٤��ʷ�
�ǡ�ruby 2.1 �⥵�ݡ��ȳ��Ϥ��ޤ�������������rb21�Ǥ���
����ǵ����Ĥ����ΤǤ�����Refinements�μ�����
�����Ƹ������������Ǥ����!
module FizzBuzz
refine Fixnum do
def fizzbuzz()
fz = ''
if (self % 3 == 0) then fz += 'Fizz' end
if (self % 5 == 0) then fz += 'Buzz' end
if (fz == '') then self.to_s else fz end
end
end
end
(1..30).each do |n|
using FizzBuzz
puts n.fizzbuzz
end
puts 42.fizzbuzz # why?
������ refine �� lexical scope �Ǥ⡢using�������Ǥʤ��äư��Ρ�
��������ƨ��ƻ�����뤳�ȤϤ��뤱�ɡ�
module FizzBuzz
refine Fixnum do
def fizzbuzz()
fz = ''
if (self % 3 == 0) then fz += 'Fizz' end
if (self % 5 == 0) then fz += 'Buzz' end
if (fz == '') then self.to_s else fz end
end
end
end
eval <<EOB
(1..30).each do |n|
using FizzBuzz
puts n.fizzbuzz
end
EOB
puts 42.fizzbuzz
������
��������餺̵�ݾڤʤΤǡ���������򤷤���Ǥ����Ѥ���������
Enjoy!
Dan the Maintainer Thereof

���Υ֥����˥����Ȥ���ˤ�����������ɬ�פǤ���
��������������
���ε����ˤϵ��ĥ桼�����������Ȥ��Ǥ��ޤ���