>>350
1.関数型言語だと、実用的なプログラミングを行うのに不便だから。
2.OOを形式化する事で、例えばデザイン・パターンとか、テンプレートについて、
 客観的な評価をしたいから。