变量和函数的正确行为

Jas*_*uit 2 language-agnostic math language-design sum function

我正在sum为玩具语言定义一个变量arity 函数.我很自然地允许它在没有参数和返回的情况下被调用0,但真正的语言(及其实现)在它们之间不同意.

是否有一个用例,返回零比抛出异常更不正确?

tem*_*def 5

从数学上讲,空总和(无数之和)定义为零.为了在数学上正确,返回零似乎是这里的正确选择.在这种情况下抛出异常可能会使您的函数的使用变得复杂,因为如果您以某种方式提供零参数,则必须确保使用try/catch保护每个调用.

希望这可以帮助!