F # во многих отношениях может быть лучше, чем большинство «других классических функциональных языков программирования». Поскольку вы уже знаете .NET, вы сможете полностью использовать все свои знания .NET, взяв две полезные вещи из F #:
Парадигма функционального программирования. То есть как программировать в стиле FP. Вы можете использовать это на любом языке. Я часто изучаю FP в своем коде на C #, потому что считаю, что это гораздо более удобный и многократно используемый способ написания программного обеспечения.
Синтаксис функционального программирования на одном языке. F # очень похож на OCAML, а семейство ML составляет один из трех основных диалектов языков FP. Двумя другими важными вещами являются семья Миранды (основным представителем которой является Хаскелл) и семья LISP (где Common Lisp и Scheme - два больших представителя).
В F # это может помочь вам очень четко различать типы F # и типы .NET. Записи, кортежи и дискриминированные союзы (в значительной степени) являются чисто F # вещами и используются почти во всех функциональных языках. Используйте их много, если вы хотите изучить FP. Классы, структуры и интерфейсы также присутствуют, но это концепции .NET. Используйте их по мере необходимости, но старайтесь избегать их в целом, чтобы в итоге вы не написали «C # с глупым синтаксисом» вместо идиоматического F #.
В Haskell вы действительно упустите из виду истинную чистоту (да, не такая уж большая проблема), ленивая оценка по умолчанию (большое изменение) и классы типов. Вы можете сделать lazy eval в F #, но вы должны использовать явные классы Lazy <>, чтобы получить его. Повсюду ленивый eval - одна из действительно уникальных и мощных вещей в Haskell, но это не строгая концепция FP. Классы типов очень мощные, но вы можете обойтись без них в большинстве реальных ситуаций. Это просто более высокий уровень абстракции, который сокращает количество котлов и повторений.
Истинная чистота обычно более академична. У него есть определенные преимущества, но если вы уже привыкли к .NET и нечистым методам, вам, скорее всего, будет просто обходиться, пока вы полностью не погрузитесь в образ мышления FP.