Некоторые языки используют унарный оператор плюса для неявных преобразований, таких как принуждение строки к числу (например, Javascript) или приведение типов малых чисел к int
(например, большинство языков на основе C) или для использования при перегрузке операторов.
Поскольку унарный плюс в основном используется для подобных хакерских целей, а также поскольку F # не выполняет автоматических расширяющих преобразований, я был удивлен, что F # включает унарный плюс.
Что меня еще больше удивляет, так это то, что в Haskell нет унарного оператора плюса. Поскольку на дизайн F # повлиял Haskell, мне любопытно, почему было решено, что F # нуждался в унарном плюсе, тогда как Haskell, очевидно, не имел.
Не могли бы вы привести пример надежного использования унарного плюса в F #? Если нет, то почему он вообще включен в язык?