FsUnit源代碼包含一個不尋常的定義:「id」字面量的定義在哪裏?
let be = id
FSI輸出:
val was : ('a -> 'a)
「標識」 的語義是下面的語句的括號的形式:
let be x = x
FSI輸出:
val be : 'a -> 'a
可以看到微小的差別:後者示例替換表達式是真實與真,而第一語法將其表示爲(真)。
讓我感到困惑的是,我無法在F#語言參考中找到任何對「id」的引用,它也沒有在「Programming F#」書中描述。此外,「id」不是保留關鍵字,我可以定義將「id」分配給其他內容,然後我不再以第一個示例中顯示的方式使用它。所以我想知道是否有任何描述這個文字和它的語義的F#文檔。
我明白了。謝謝,蒂姆。 – 2010-08-03 12:23:59