関数的プログラムとかTDDとか

物を選んでから何かをさせる - オブジェクト指向のお話」の

Blog Hackers Conference 2005 の打ち上げのときに、プログラムをどうやって書き始めるかという話で盛り上がりました。まずはじめにデータベース周りをオブジェクトにする、つまり物を作ってから書き始める人、紙に簡単なフローを描いてから作る人などなど。で、注目の宮川さんは、最初にメインプログラムの中にオブジェクトと、そのオブジェクトに何をさせるかを書くそうです。つまり、インタフェースでプログラミングをしているそう。だから宮川さんのソースは綺麗なんだな、という秘訣がわかったり。

を読んで、「何をするか」ではなく「何が欲しいか」から記述していくあたりが、関数的プログラムやTDDと似てるよなーと思ったり。

うまく言えないけど、ボクが関数的プログラムが気になる理由、TDD作る理由はこのへんにあるのだ。