C言語で lambda っぽいもの - from reddit
Reddit で見つけたネタ。
programming: First Class Functions in C
int main() { returns_int_f *times2 = returns_int_lambda("int f(x) { return x * 2; }"); int answer = (*times2)(55); printf("answer is %d\n", answer); }
C言語で lambda 式が作れるぜという話。
もちろん色々な点*1で、本物の lambda 式ではないのだけどネタとしては面白い。
仕組みのコードはリンク先に書いてありますが
という感じ。
追記
コメントで教えてもらいました。
libtcc を利用した alohakunさんの方法の方がよりスマートですね。
http://alohakun.blog7.fc2.com/blog-entry-667.html
*1:レキシカルスコープ云々とか変数の束縛云々とか