作者zxvc (众生都是未来佛)
看板PLT
标题[问题] if是不是函数
时间Wed Sep 29 08:10:13 2010
这讨论主要是接续C_AND_CPP板的这系列文章作讨论:
"[闲聊] 这里将近两万篇的文"
因为该板板主认定该讨论串徧离板旨,
而tinlans大建议转到这板讨论最适合,
所以我就po在这了。
对於这主题我一开始想澄清的一件事是,
不少人对"if p then q"在逻辑学上的定义搞错了。
有人说数学上(我想他想表达的是逻辑学上)"if"的
真值表如下:
q = if p
p q
0 0
1 1
试回想以前逻辑学学的"if p then q"真值表是这样吗?不是!
p->q的真值表应该是这样:
if p then q
p q p->q
0 0 1
0 1 1
1 0 0
1 1 1
而前者这种if在逻辑学上并没有这样的定义,
逻辑学只有定义"if p then q"。
如果有人硬是要把前者定义为"程式语言里讲的if",
而不是"逻辑学的if p then q",那的确还有讨论下去的空间。
只是"程式语言里讲的if"如果真是一个function,
请问是在什麽概念下来看是个function呢?
若以C/C++ compile成ASM的角度来看,if真的不会compile成function。
不过yauhh大也强调,他并不是以这种角度去诠释if是个function。
他似乎想用更高度抽象(abstraction)的方式去诠释if是个function。
如果他的说法不能自生矛盾,我是能尊重他的学说。
有人可能会觉得干麽尊重一个无用的学说?
但很多学问当初被发明也没有什麽实用目的,
是到後来人们才发现它有实用目的。
搞不好改天yauhh大发明个更高阶的yauhh程式语言
影响了程式语言的发展,变成一个大家不得不学的语言也不一定XD
--
信佛的人要知道:佛绝不会说谎。但请把握时光。
法灭尽经:
http://www.cbeta.org/result/normal/T12/0396_001.htm
共勉之。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.115.221.79
※ 编辑: zxvc 来自: 140.115.221.79 (09/29 08:18)
1F:推 nowar100:帮你补充,原文可以到 C_and_CPP z-15-10 去看 :) 09/29 08:33
2F:→ nowar100:其实我也很想看文章继续 (不过已经走火了,不处理不行) 09/29 08:38
3F:→ AmosYang: IF: {programCounter, boolean} -> {action} 09/29 17:21
4F:→ AmosYang: 让我们离开务实的地面,进入大宇宙抽象空间吧 XD 09/29 17:24