Почему ";;" требуется в F# интерактив?

Почему ";;" требуется в F# интерактивный в конце команды? Например, IronPython не требует этого?

РЕДАКТИРОВАТЬ: Когда вы ставите двойные точки с запятой в F#? охватывает большую часть исторического фона

Я предполагаю, что моя точка зрения заключалась в том, что если вы используете в интерактиве в основном однострочники, то это громоздко; однако я вижу значение ';;' при построении функционирует в интерактивном режиме.

2 ответа

Исторически я считаю, что это было унаследовано от OCaml - см. /questions/2562315/kogda-vyi-stavite-dvojnyie-tochki-s-zapyatoj-v-f/2562336#2562336.

Как компилятор знает, когда вы хотите завершить свою функцию - оба они действительны

let func() =
    System.Console.Read() |> ignore

а также

let func() =
    System.Console.Read() |> ignore
    1

Итак, нам нужно ;; знать, где заканчивается функция

Другие вопросы по тегам