程式時間 2

多次元宇宙 10

程式員頭腦 8

時間定義 3

用 functional programming languages(函數程式語言)所寫的程式,程式內是沒有 state(狀態)的。

「程式內是沒有 state」的意思是,程式內只有「常數」,沒有「變數」。

程式內的 data(數據)是不會隨時間改變的。

在那類程式中,是沒有「時間」。

例如,有一個「加法程式」,要你輸入 a 和 b,然後它會運算 c = a + b,告訴你答案 c 是什麼。

那個程式內部,本身是沒有儲存任何 variable values(變數數值)。

例如,你輸入 3 和 7,程式就會輸出 10。

同一組 input(輸入),就會有同一個 output(輸出)。

無論你在任何時間,運用那個「加法程式」,只要你輸入 3 和 7,它就會輸出 10。

所以說,那個「加法程式」沒有「時間」。

不是任何程式也是沒有「時間」的。

例如,一個「銀行會計程式」有一個變數 x,用來代表我的戶口結餘。

因為我的戶口結餘會隨時間改變,所以在不同日子輸入指令「請問我的戶口結餘是多少?」,程式會輸出不同的答案。

雖然是同一個指令「請問我的戶口結餘是多少?」,但是在不同的時間,那個「銀行會計程式」會輸出不同的答案。

所以說,那個「銀行會計程式」有「時間」。

「有『時間』」是意思是,有 variable(變數)的數值改變。

同一個 variable x,不同的「時間」,有不同的數值。

即是話,不同的數值對應於不同的「時間」。

例如,對於那個「銀行會計程式」來說,同一個戶口,結餘的不同數值,就為之不同的「時間」。

— Me@2010.04.11

2010.04.12 Monday (c) All rights reserved by ACHK