过程应用

过程应用 (procedure application) 的意思就是将过程应用于具体的参数上去, 而过程是函数的近义词.

一般来说我们并不区分过程和函数这两个术语, 但现在我们略微讨论一下. 现代数学意义上的函数是外延性的, 也就是说, 函数只是输入和输出的对应, 同算术, 算法和几何图形没有直接的联系. 即便一个函数由某个公式给出, 数学家也仅是将其当作序对的集合 (不过, 一个函数的资料一般还包括它的domain和codomain). 程序设计中出现的过程和函数是不同的, 因为它不仅仅是一种对应关系, 还蕴含着如何从输入计算得到输出的规则方法, 也就是说, 它更具内涵性. 在历史上, 函数的概念有着很长的发展历程, 但自从Dirichlet之后, 外延性的观念就逐渐占上风了, 并到现在完全主宰了数学领域. 但是, 随着魔法学的兴起, 内涵性的观念重新得到重视, 并且与之相关的lambda calculus等理论也得到极大发展.

传统上, 数学中函数应用的句法是多种多样的, 比如有中缀记号, 主要用于加减乘除, 前缀记号, 主要用于人们自己定义的函数, 还有一些角标记号等等. 但是, Scheme中只有一种过程应用的记号, 那就是"全加括号的前缀记号". 虽然最开始许多人会因为数学实践中养成的习惯对这种记号很不适应, 但是多加使用之后就会发现它的确是一种更加一致与方便的记号.

(remainder自然是取余数的过程, quotient自然是取商的过程.)

你的回應