Я понял, как я могу объявить тип данных другим типом данных. объявить тип данных типа данных в sml
т.е.datatype suits = HEARTS | DIAMONDS
datatype card = TWO of suits | THREE of suits
fun value TWO of suits = 2
|value THREE of suits = 3
Я хочу объявить тип данных другого типа данных. Тогда мне не нужно объявлять все 52 карты в колоде отдельно. Поэтому я подумал, что только объявляю значения карт как один тип данных, а цвет карт - как другой тип данных. Проблема возникает, когда я пытаюсь сопоставить карту типа данных с функцией. Мне нужно объявить значения цветов, также как HEARTS = 2 и DIAMONDS = 1, но когда я совпадаю, это не проблема. Я буду в состоянии отправить ДВА СЕРДЦА в функцию, подобную одному аргументу (ДВА, СЕРЬГИ), как два аргумента.