ついったーのむぎゅ〜>ω<ポータルこと、桜花たん。

http://d.hatena.ne.jp/rofi/20100606/1275852609

今回もこんなに面白いことしてくれました。

ちょっと、燃えますよね。

したら、僕はこれだぜ!
(ていうかパクりです。さーせん><。)

#include <iostream>
#include <boost/lambda/lambda.hpp>
#include <boost/lambda/if.hpp>
#include <pstade/oven/counting.hpp>
#include <pstade/oven/forall.hpp>
#include <boost/lexical_cast.hpp>
#define BLL	boost::lambda
#define PO	pstade::oven

//引数に与えられた数まで計算するよ。
int main(int ac,char**av){if(PO::forall(PO::counting(1,boost::lexical_cast<int>(av[1])),(BLL::if_(BLL::_1%3&&BLL::_1%5)[std::cout<<BLL::_1].else_[BLL::if_(!(BLL::_1%3))[std::cout<<BLL::constant("Fizz")],BLL::if_(!(BLL::_1%5))[std::cout<<BLL::constant("Buzz")]],std::cout<<BLL::constant("\n"),true)),true){}}

ワンライナーってヤツさ。あと、セミコロンレス。counting使ってしまうのが、ちょっと卑怯くさいけれど。。。
boost1.42.0
pstade1.04.3
VisualStudio2008 SP1で確認。
gcc4.5系では、ovenライブラリはうまく動かないです。