通用LISP传递的参数少于所需的参数 - 发生了什么?

时间:2015-11-22 21:39:42

标签: functional-programming lisp common-lisp

我目前正在研究一些涉及多项式的代码(不是我的),以便更好地理解功能样式LISP编程。

Tuple<GetIpReturn, string> ip = await _user.GetIp();
GetIpLocksReturn returnValue = ip.Item1;
switch (returnValue) {
    case GetIpLocksReturn.InternetError:
        // WebException occured
        break;
    case GetIpLocksReturn.AuthError:
        //
        break;
    case GetIpLocksReturn.Success:
        // Use ip.Item2 (The ip string)
        break;
}

当函数定义为2时,我不理解compare方法在collect-terms中调用时只能使用一个参数。

在这种情况下,比较成功取出传递的列表的子列表,并将它们用作a和b的值。

1 个答案:

答案 0 :(得分:6)

collect-terms根本没有打电话给compare。它将compare传递给sort函数,该函数将使用两个参数调用compare