На самом деле, я могу ошибаться, но я не ожидаю, что F # будет таким же распространенным явлением, как другие языки .NET; полезно в нескольких кругах (академические, компиляторы, несколько других сценариев) - однако, не забывайте, что C # предлагает использование FP - и это улучшается каждый раз: C # 1.2 имеет делегатов; C # 2.0 имеет анонимные методы и захваты / закрытия; В C # 3.0 есть лямбды для простоты и Expression для абстракции. Анонимные типы (C # 3.0) имеют некоторое сходство с кортежами (с точки зрения удобства), но, очевидно, это очень разные звери, поэтому однозначно нельзя сравнивать.
Возможно, не так оптимизирован, как F #, но для большинства повседневных сценариев использования более чем достаточно.
Также совершенно очевидно, что лучшая поддержка неизменяемости (особенно для многопоточности) очень важна для команды по языку C # для дальнейшего рассмотрения.
Мои деньги на C # улучшаются в FP, и он является предложением .NET FP для большинства повседневных задач. Конечно, будет некоторое использование F #, но (чисто субъективно) я просто не вижу огромной миграции.