私は現在 Haskell を学んでいます。汎用アプリケーションのプログラミングには、どちらの言語 (F# または Haskell) を好みますか?
どちらの言語が強いと思いますか?
Haskellに行きます。 HackageDBは、その言語専用に作成されたライブラリの優れたコレクションです。F#の場合、関数型言語を念頭に置いて作成されていないライブラリを主に使用する必要があるため、使用するのに「エレガント」ではありません。しかし、もちろん、それはあなたがやりたい関数型プログラミングの量とそれを使いたいプロジェクトの制約に大きく依存します。「一般的な目的」でさえ、すべての場合に使用する必要があるという意味ではありません;)
.Net フレームワーク全体にアクセスできるので、F# と言えます。ただし、それはライブラリの詳細です。
それはあなたが何をしたいかによります:
Haskellは2つの中でより純粋に関数型の言語です。
F#はハイブリッド言語であり、純粋に機能的ではありませんが、WindowsまたはMonoで最新の処理を簡単に実行するために使用できる基本クラスライブラリの優れたセットを備えています。
Jon Harrop は、何らかの理由で Haskell に深刻な不満を抱いていると思います。学界以外で使用されていないというのは、単に真実ではありません。実際、投資銀行で広く使用されており、正当な理由により、F# や OCaml よりもはるかに多く使用されています。関数型プログラミングの仕事が必要な場合は、F# や OCaml よりもはるかに多くの Haskell プログラマ向けの投稿が宣伝されているため、Haskell を学びましょう。F# は Microsoft が背後にいてゼロから始めているため、人気が高まると確信していますが、現時点では Haskell が明らかにリードしています。
おそらく 2、3 年前、OCaml は実用的な関数型言語の分野をリードしていましたが、それ以来、Haskell はより多くのライブラリ、より多くの機能、より優れたパフォーマンス、およびより広い商用利用でそれを追い抜いています。
何のために勉強しているかにもよると思います。純粋な関数型言語を体験するためにそれを行っている場合は、Haskell を使用してください。しかし、それ以上の目的で確実に言語を使用する場合は、F# を選択することをお勧めします。