熱心な機能プログラマーとして、私はいつもより多くの人々を機能プログラミングの精神に惹きつけることに興味を持っています。だから、通常はFPが他の人に提供するメリットについて説明しようとしますが、これまでのところ幸運はありません。この議論でよく出てくる論点の1つは、FPは本当にいいと思うが、実際には限られた学術目的にしか適していないようだ。これは、通常、引数でバックアップされているため、ほとんどの企業が関数型言語を使用することはほとんどありません。「現実世界」の機能技術
私は、その議論の中で固有の鶏卵問題以外の企業でのFPの使用の欠如に対して実質的な議論をすることはできません(私はOCamlを使っている2社のみを知っています。他の言語)。
しかし、この議論の1つの方法は、FPのテクニック(主に言語ではないかもしれないが)が主流になっていて、おそらく今のところ彼らに利益をもたらすかもしれないところを示すことが多い。例えば、私は多くのC++を使用しているので、OOPはデータ構造とアルゴリズムを簡単に分離することができないため、機能的な方法で完全に行われるSTL-Algorithmパッケージをよく引用します。もう一つの例はgitです。このデータ構造は、最も簡単で持続性の高い永続性を提供するため、ツリーがどのFP言語でも表現される方法と非常によく似た不変のデータ構造を使用します(実際には前のリビジョンのバックリンクに加えて厳密に同じです)
野生でFPテクニックを使用する他の例を教えてください。
C#3.5以上ではプログラマがFPに移動しています。これはラムダ式をサポートし、IEnumerableのLINQ拡張は素晴らしいです。 http://www.c-sharpcorner.com/uploadfile/rmcochran/introduction-to-functional-programming-in-C-Sharp/を参照してください。 –
ちょうど好奇心から。 OCamlを使っている2社を知っているとおっしゃいましたか? (私はちょうどジェーンストリートを知っています) – insumity
ジェーンストリートの1つは、他のMLStateです(しかし、彼らはまだ小さなスタートアップです)。 – LiKao