私は SML を学習しようとしていて、2 つの関数を実装しようとしています。最初の関数は問題なく動作しますが、2 番目の関数を追加すると実行時エラーが発生します。
stdIn:1.2-1.17 Error: unbound variable or constructor: number_in_month
これは、関数 number_in_month を呼び出すときに発生します。私のコードは次のとおりです。
fun is_older(d1 :int*int*int,d2 :int*int*int) =
(#1 d1) < (#1 d2) andalso (#2 d1) < (#2 d2) andalso (#3 d1) < (#3 d2)
fun number_in_month(da :(int * int * int) list ,mo : int) =
if da = []
then 0
else if (#2(hd da)) = mo
then 1 + number_in_month((tl da),mo)
else 0 + number_in_month((tl da),mo)