Почему ";;"требуется в F # интерактив? - PullRequest
2 голосов
/ 31 января 2012

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

EDIT: Когда вы ставите двойные точки с запятой в F #? охватывает большую часть исторического фона

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

Ответы [ 2 ]

2 голосов
/ 31 января 2012

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

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

и

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

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

2 голосов
/ 31 января 2012

Исторически я считаю, что это было унаследовано от OCaml - см. https://stackoverflow.com/a/2669731/82959.

...