button('hey')
вызывает функцию, а не устанавливает ее как обратный вызов.
Some
не ключевое слово. Существует option
тип однако, который является дизъюнктным объединением, содержащим две вещи:
Some
, который содержит значение некоторого типа. None
, который представляет отсутствие значения. Это определяется как:
type 'a option =
| None
| Some of 'a
Это действует отчасти как nullable тип, где Вы хотите иметь объект, который может содержать значение некоторого типа или не иметь никакого значения вообще.
let stringRepresentationOfSomeObject (x : 'a option) =
match x with
| None -> "NONE!"
| Some(t) -> t.ToString()
Может проверить Дизъюнктные объединения в F# для большего количества информации о DUs в целом и типе опции (Некоторые, Ни один) в частности. Как в предыдущем ответе говорится, Некоторые - просто случай объединения option< 'a> введите, который является особенно общим/полезным примером алгебраического типа данных.