F #, оператор присваивания против оператора набора
Я начал с F #, и некоторая структура кода удивляет меня. Например:
У меня есть следующий код:
let mutable s = 10
s <- 1 + s
printf "%i" s
Все понятно с математической стороны. Я пометил «s» как изменяемый и присвоил новое значение «s». Результат 11.
Позвольте мне попробовать другую часть кода:
let mutable s = 10
s = 1 + s
printf "%i" s
Этот код работал. Но я вижу чтоs = 1 + s
немного странно со стороны математики. Результат выполнения этого был 10.
Мой вопрос, что происходит в последнем примере? Почему я не получил ошибку? Являетсяs = 1 + s
просто игнорируется? Почему? Я не получил никакой ошибки в выводе.