Scheme无效应用程序错误

时间:2014-05-04 14:09:13

标签: scheme lisp

我正在使用compileonline来编译方案脚本,这里我有一些超级简单的脚本报告和无效的应用程序错误。你能告诉我什么是错的吗?

(define (nazwa a) (
(cond 
((= a 0) 2.0)
((= a 1) 5.0)
);cond
);nazwa

);define

(display (nazwa 0))

完整错误代码:gosh:"错误":无效的应用程序:(2.0)。

1 个答案:

答案 0 :(得分:3)

您将cond表达式包装在一对额外的括号中,Scheme将其作为函数应用程序。所以它需要cond(在这种情况下为2.0)的结果并尝试将其应用为函数,这显然不起作用。

要明确:定义函数的语法是(define (function-name parameters) expressions) - 函数体周围没有额外的括号。