[問題] if是不是函數

看板PLT (程式語言與理論)作者 (眾生都是未來佛)時間14年前 (2010/09/29 08:10), 編輯推噓1(103)
留言4則, 2人參與, 最新討論串1/10 (看更多)
這討論主要是接續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)

09/29 08:33, , 1F
幫你補充,原文可以到 C_and_CPP z-15-10 去看 :)
09/29 08:33, 1F

09/29 08:38, , 2F
其實我也很想看文章繼續 (不過已經走火了,不處理不行)
09/29 08:38, 2F

09/29 17:21, , 3F
IF: {programCounter, boolean} -> {action}
09/29 17:21, 3F

09/29 17:24, , 4F
讓我們離開務實的地面,進入大宇宙抽象空間吧 XD
09/29 17:24, 4F
文章代碼(AID): #1CeeFefS (PLT)
討論串 (同標題文章)
文章代碼(AID): #1CeeFefS (PLT)