>>158
eval等のメタ機能で動的に関数を作れることと,計算モデルに最初
からファーストクラスの関数が入ってることは区別してほしいな.

Perlのevalで「動的に」関数を作れるといってるのは,Cでsystem
を使ってコンパイラを呼び出し,コンパイル結果を動的リンクして
「ほら関数が動的に作れたよ」といっているのと一緒.

関数型言語の本質的な特徴は,(1)リダクションにもとづく意味論と
(2)高階関数になるのでは.(1)だけだと項書換え系一般になっちゃう
けど,(2)を入れることで関数型を特徴付けられる.

このスレで困るのは,「他のパラダイムにおいて高階関数を表現でき
るので,高階関数は関数型を特徴付けるものではない」という不思議
な議論をする人がいること.関数型と他のパラダイムは必ずしも対立
するものではない(特にオブジェクト指向とは直交しているといって
もよい)ことに注意してほしいな.