プログラミング言語コースで標準 ML を学び始めています。
is_older最初の宿題では、 2 つの日付を取り、評価結果がtrueorになる関数を書きますfalse。最初の引数が 2 番目の引数よりも前の日付であるかどうかを評価しtrueます (2 つの日付が同じ場合、結果はfalse. になります)。
そこで、次のコードを書きます。
fun is_older(first: int * int * int, second: int * int * int) =
if(#1 first = #1 second andalso #2 first = #2 second andalso #3 first = #3 second) then false
else if (#1 first < #1 second) then true
else if (#1 first = #1 second andalso #2 first < #2 second) then true
else if (#1 first = #1 second andalso #2 first = #2 second andalso #3 first < #3 second) then true
else false
コードは問題なく動作しますが、見栄えが悪いです。
このコードを機能的なスタイルに書き直すにはどうすればよいですか?