我最近一直在考虑这个问题,因为python3正在将print
从语句改为函数。在
然而,Ruby和CoffeeScript采取了相反的方法,因为您经常在函数中省略括号,从而模糊了关键字/语句和函数之间的区别。(没有括号的函数调用看起来很像关键字。)
一般来说,关键字和函数有什么区别?在我看来,有些关键字实际上只是函数。例如,return 3
同样可以被认为是return(3)
,其中返回函数是在语言中本机实现的。或者在JavaScript中,typeof
是一个关键字,但它看起来非常像一个函数,可以用括号来调用。在
有什么想法?在
函数在堆栈框架内执行,而关键字语句不一定。一个很好的例子是
return
语句:如果它是一个函数,并且将在自己的堆栈中执行,那么它就无法以这种方式控制执行流。在关键字和函数不明确。括号是否必要完全取决于语言语法的设计。在
考虑一个整数声明,例如:
与
^{pr2}$这两个例子在逻辑上是等价的,但因语言语法的不同而不同。在
编程语言使用关键字来保留有限数量的基本函数。当你写一个函数时,你是在扩展一种语言。在
关键字是比函数更低级的构造块,可以做函数不能做的事情
您在问题中引用了
return
,这是一个很好的例子:在您提到的所有语言中,没有办法使用函数来提供与return x
相同的行为。在相关问题 更多 >
编程相关推荐