HaxeではPythonとかHaskellみたいな感じで、配列内包表記が使えます。
そこんところ一時変数の束縛とかしたいなーとか思ったので以下みたいな感じに。
早い話が即時関数を作ってやれば良いかんじ。
class Main {
public static function main() {
var fizz_buzz =
[for (_i in 0...100)
function(i) {
trace(i);
return
switch (i) {
case 0: '0';
case i if (i % 15 == 0): 'fizz buzz';
case i if (i % 3 == 0): 'fizz';
case i if (i % 15 == 0): 'buzz';
case i: Std.string(i);
}
}(_i)
];
trace(fizz_buzz);
}
}
fizzbuzzならいらないじゃんとか思って、無意味にtraceはさんでるアレ。