我一直想知道为什么调用一个函数而不是执行一个函数。
谷歌搜索function call etymology
和类似术语没有什么用,维基百科没有提及,在线词典根本没有词条或没有词源。
“调用”功能的概念从何而来?
它可能来自处理参数的不同语义-按值调用,按引用调用,按名称调用等。我还认为,该术语起源于“过程调用”或“子例程调用”,并且仅在以后应用于函数。 。在数学中,您将函数应用于其参数,而我们所谓的函数几乎总是过程/子例程(因为数学函数没有副作用)。
—
Doval
@Doval:是的,但是为什么在“过程调用”中使用非常“调用”而不是其他动词呢?
—
FrustratedWithFormsDesigner 2014年
@FrustratedWithFormsDesigner毫无头绪,但我认为与“函数调用”相比,尝试“子例程调用”或“过程调用”的起源要好于“函数调用”,这会更好。我意识到评论未回答问题,但这就是为什么我将其评论而不是回答。
—
Doval
在lambda-calculus中,您应用了一个函数(而lambda运算符正在进行抽象)。有些语言说的是调用而不是调用函数。
—
Basile Starynkevitch 2014年
在汇编语言的某些方言中(例如x86汇编),操作码被命名为
—
戴维·康拉德
call
和/ ret
或其某种变体。编程语言有可能从底层硬件继承了该术语,尽管这仍然留下了一个问题,那就是为什么硬件设计人员会为操作选择这些名称。