下一章 上一章 目录 设置
4、关于我和函数的一点点(中篇) 上回书说到 ...
-
上回书说到。
满足上回书所说的三个条件的“东西”,都可以称之为广义的“函数”吗?
答案是……
肯定的!
我们回到“function”这个英语单词上。
“函数”一词本是出自李善兰所翻译《代数学》一书,对“function”翻译而得的。
自然应该回到“function”单词本身。
function有“作用”、“功能”、“职能”、“机能”、“起作用”之意。
“作用”是指“对事物产生影响”。
“功能”是指“事物或方法发挥有利的作用”。
“职能”是指“事物所具有的作用”。
“机能”是指“在一个大整体中,其某一部分应有的作用”。
对这几个词语的含义,我们可以归纳总结一下。
它们的含义,鬼使神差般的收束到了一个都有“对什么东西起作用”或者是“对什么东西产生影响”这样一个意思。
所以,我们是不是可以认为,function的本意便是“对‘东西’起的作用”或者说“对‘东西’带来的影响”。
上一章的末尾,我们提出了“广义的函数”的三个特点。
第一,函数有一个“输入值”。就像是高中数学里的“x” ,和程序设计里的“输入参数”。
第二,函数有一个“输出值”。就像是高中数学里的“y” ,和程序设计里的“返回值”。
第三,函数有一个“本体”。就像是高中数学里的“f()” ,和程序设计里的“子程序”本身。
如果把“function”的“本意”带入到这个定义里……
Surprise!完美!
“对什么东西起的作用”,这句话成立至少需要有三个部分。
第一个部分,我们需要“东西”。如果没有“东西”,怎么起作用?对谁去起作用?
正好这个“东西”,咱有了!
我们给的三个特点中的第一个, “输入值”。
“输入值”就是这么一个“东西”,输入进去,也就可以对输入进去的东西起作用了。
同样的,第二个部分, “对…起”,无论是“起影响”也好, “起作用”也好。
这个“起”,它是一个“过程”。
煮饭是一个米粒变成饭的过程;
砍柴是一个木头变成柴的过程;
吃饭是一个食物进入体内的过程;
诸如此类,不胜枚举。
我们给的三个特点中, “本体”刚好就是这么一个“过程”。
“x”经过了“f()”变成了“y”。
这个“函数”的“本体”就对应着“过程”。
至于第三个部分, “的作用”。
这是结果,是“作用”在“东西”后产生的“结果”。
对应着我们给的三个特点的“输出值”
这点, “输入值”和“输出值”相对应,上文关于“输入值”也讲了许多。
我想我应该不需要过多的解释为何“输出值”能和“的作用”所对应。
这样一来, “function”便和我们给出的三个特点一一对应了。
总结下来,广义的“函数”,也就是具有“输入”、“输出”和“过程”这三个特点的“东西”。
为了方便理解,这里,以及后面的“输入值”、“输出值”就改成“输入”和“输出”罢。
带上“值”字,可能会让人产生一种“输入”、“输出”的东西一定要是“数值”的观念。
但是,在我的理解里,广义的“函数”,“输入”、“输出”不一定是“数值”。
比如,根据我们对“函数”的总结, “输入”设定为“斧子”,“过程”设定为“砍树”,那“输出”自然而然就是“树倒了”。
但“函数”是不是就是“输入”加上“过程”再加上“输出”呢?