Почему этот тип функции "плохо напечатан" - PullRequest
0 голосов
/ 30 сентября 2019

При заданном интерфейсе с val add : ’a -> ’a set -> ’a set, почему ввод add 3 [1] не проверяет тип? Я думал, что его тип будет int set

1 Ответ

3 голосов
/ 30 сентября 2019

Ну, [1] имеет тип int list, а не int set. Если вы покажете больше интерфейса Set, мы сможем помочь больше.

Часто установленный интерфейс имеет Set.empty и Set.singleton. Таким образом, ваш пример может быть закодирован как add 3 (singleton 1) или как add 3 (add 1 empty)

...