Синтаксис F # для приложения функции:
f x
То есть всякий раз, когда компилятор видит выражение, за которым следует пробел, а затем другое выражение, компилятор видит его как приложение функции, где первое выражение - это функция, а второе выражение - аргумент.
В вашем коде это анализируется как приложение функции:
(1.0m + interest) pown
, где (1.0m + interest)
- функция, а pown
- аргумент.
Позже, когда компилятор добирается до проверки типов, он видит, что (1.0m + interest)
на самом деле не является функцией, и поэтому жалуется: это выражение не является функцией и не может быть применено
Я не совсем уверен, что вы хотели сделать, но из имен переменных похоже, что вы пытаетесь вычислить сложный процент, и для этого вы пытаетесь поднять (1 + интерес) до степени лет .
Если это предположение верно, то способ, которым вы пытаетесь вызвать функцию pown
, неверен. Эта функция ожидает два аргумента, и способ ее вызова заключается в написании имени функции, за которым следует первый аргумент, а затем второй:
pown x y
Или, применив это к вашему коду:
pown (1.0m + interest) years