鍋あり谷あり

テーマを決めずに適当に書いています。

メタプログラミング

メタプログラミングrubyを読んでいる。
で。

たぶん昔、gotoが混沌の源だった。
gotoがもたらす混沌は、構造化プログラミングによって治められた。

次に、関数へのポインタとswitch〜caseが混沌の源となった。
この混沌は、オブジェクト指向によって治められた。

たぶん今、メタプログラミングが混沌をもたらしている。rubyメタプログラミングも、C++メタプログラミングも、大いなる混沌の源となっていると思う。
だからたぶんそのうち、なにか新たな考え方が現れて、混沌は治められるんだと思う。

そしてたぶん、その考え方を目にした lisper は、「あ、それなら40年前にライブラリ化されているよ?」と言うんだと思う。