2014-12-01 72 views
4

我正在參加SCHEME課程,如果在寫入「λ」或「lambda」之間有任何區別,我就會遊蕩。 澄清,這兩個片段之間是否存在功能差異?SCHEME | λ與λ?

使用λ

(define foo 
(λ (x) 
    (...))) 

使用lambda

(define bar 
(lambda (x) 
    (...))) 

回答

6

λ是名爲lambda小寫符號,但λ定義爲lambda的代名詞最Scheme實現沒有。這不同之處在於lambda保證工作,而λ肯定比教師寫的更短。

作爲一個例子,我可以提到,即使該符號不被支持,奇才也經常在SICP videos中使用λ。無論何時你看到它,你都需要寫lambda

+0

所以爲了讓我的腦袋直 - 在Dr.Racket中的「λ」是某種「IDE糖」? – Aviad 2014-12-01 21:17:14

+2

不,更像是#!racket語言中的語法糖,它是球拍應用程序的默認語言。在#!r5rs和#!r6rs中,即使在球拍中運行,它也沒有定義,並且您得到*λ:未綁定的標識符* – Sylwester 2014-12-01 21:26:15

+0

難題! Thx的詳細答案:) – Aviad 2014-12-01 21:28:56