関数型言語の特徴

何が入っていれば関数型言語と言えるのか気になっている。Wikipediaによれば、関数型言語は以下のもの。

ラムダ計算の概念をプログラミング言語として体現したものである。すべての計算は関数の評価によって行われる。

HaskellOCamlでは、本質的に引数が1つしか取れないが、Gaucheはそうなっていない。しかし、この機能があると関数型ではかなり応用範囲が広がる。Gaucheでは、その辺をどうしているのか気になる。


先輩は、Schemeは低レベルな言語であると言っていた。低レベルで色々深いことができると思うが、パターンマッチなど結構高級な機能もあると思うので、そのバランスが面白いのではないかと思う。ある意味、低レベルと高レベルの両者をカバーしている?