Я новичок в SML и пытаюсь запустить код из github в SML / NJ. В настоящее время я пытаюсь вызвать функцию
fun dates_in_month(xs : (int * int * int) list, n : int) =
if null xs then
[]
else if #2 (hd xs) = n then
(hd xs)::dates_in_month(tl xs, n)
else
dates_in_month(tl xs, n)
вот так
dates_in_month(3::2::1::nil, 5)
, но получаю следующее сообщение об ошибке на SML / NJ 110.97
stdIn:8.1-8.31 Error: operator and operand do not agree [overload - bad instantiation]
operator domain: (int * int * int) list * int
operand: 'Z[INT] list * 'Y[INT]
in expression:
dates_in_month (3 :: 2 :: <exp> :: <exp>, 5)