Top
Photo Drawings Software Writing Reading Memo Study Profile Bookmark 
Amethyst DumLambda PetitLambda Yamanba JSharp JFlat OOPS yash KumonoIto ML Toys 

関数型言語の応用

理論的な美しさもさることながら、 MLやその他の関数型言語はプログラミングの道具としても優れています。

ビジネスの武器として

日経システムプロバイダ(2002/03/15) にこんな記事が載っていました。
都会のオフィス街で見かけるキンコーズ・ジャパンの システム部 佐藤ディレクターへのインタビューです。

佐藤ディレクターが特に重視しているのはスピード、そしてムダの排除である。
(省略)
「Webを使った新たなサービスのシステムを考えて、午前中にシステムプロバイダ に相談したなら、夕方にはそのプロトタイプを見せてもらうことを条件にしている。」 とまでいう。 「大量の仕様書作りなんかいらない。変化し続ける時代の要請を完全に先取りはできないから、 機敏に舵取りして目標を追わなければならない。 それについてこられる機敏な対応が、システムプロバイダには必須だ。」

このように、ソフトウェア開発にはスピードが要求されます。
迅速なソフトウェア開発を実現するためにプログラミング言語に求められるのが高い生産性です。
関数型言語は生産性の高さにおいても優れています。 つぎの記事をご覧ください。

業界を主導する大手ソフトウェア企業も関数型言語に注目しています。
そのひとつが、あのマイクロソフトです。 MS社は、 Simon Peyton JonesLuca CardelliErik Meijer をはじめとした 関数型言語の有名な研究者を 研究所に集めています。 SML.NETMondrian はその具体的な成果です。 また、.NETの実行環境であるCLRの命令仕様(Common language intermediate instruction set)に、 関数呼び出しに関して最適化された命令が採り入れられています。 これは、関数型言語プログラムをコンパイルすることを考慮したものかもしれません。

個別分野への適用

関数型言語は、とくにプログラミング言語に関連した研究/ソフトウェアで使われています。 入門用のドキュメントで、コンパイラやインタプリタがプログラミング例に取り上げられるような 言語はほかにはないでしょう。

関数型言語の持つ優れた性質は他の分野でも有効です。 たとえばつぎのような研究がなされています。

関数型言語で実装されたソフトウェア

以下のページが、関数型言語を用いて実装されたソフトウェアについてまとめています。