in
используется здесь как часть подробного синтаксиса .Вы можете переписать его в облегченном синтаксисе , чтобы сделать его более читабельным.Это было бы что-то вроде этого:
fun a b =
let d = a 10
d - 4 * b
a
вызывается с 10
в качестве аргумента, а результаты присваиваются d
.Позже d - 4 * b
вычисляется и возвращается из функции.
Например, у вас есть a
, равный fun c -> c + c
, поэтому вызов его с помощью 10
возвращает 20
.
20 - 4 * 5 = 0
, поэтому c
установлено на 0
, а x
будет 0 - 6 = -6
.
Из F # интерактивно:
> let c = (fun a b -> let d = a 10 in d - 4*b) (fun c -> c + c) 5;;
val c : int = 0