我开始学习标准 ML 和编程语言课程。
在第一个作业中,我尝试编写一个函数,该函数is_older
接受两个日期并计算为true
or false
。它评估true
第一个参数是否是第二个参数之前的日期(如果两个日期相同,则结果为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
代码工作正常,但看起来很难看。
如何以功能样式重写此代码?