2010-10-01から1ヶ月間の記事一覧

Grapefruit電卓

Grapefruitが気になってしょうがないので、おもちゃの電卓を書いてみた。GrapefruitはFRPライブラリの一つで、定期的なポーリングを必要としないpush型の設計でありながら、push型FRPにありがちな問題をいくつか解消しているのが売りらしい。 ループのある回…

Cプリプロセッサ: マクロの再帰禁止とトークンの展開禁止

cpp

Cプリプロセッサがマクロの再帰的な展開を許さないのは良く知られていると思う。 #define A() [B()] #define B() {A()} A() /* [{A()}] に展開される */ つまり、あるマクロの展開中に、それと同名のトークンが出現した場合、展開を行わない。特定のマクロに…