2010-11-04 26 views
5

LISP的這個版本/方言/實現是爲了運行? (我的確明白這本書是用Common LISP編寫的(正如引言中所指出的那樣),並且它早於1994年的CL標準)。LISP的哪種方言是「人工智能編程的範例」?


將問題分解爲兩部分,使其更清晰。

+0

它被稱爲「AI程序設計範式」,而不是「原則...」 – Xach 2010-11-04 13:01:35

+3

您可以顯示您正在閱讀的功能嗎? – Ken 2010-11-04 14:19:43

+0

從您提供的鏈接的第一行開始:';;;; - * - 模式:Lisp;語法:Common-Lisp - * - ' – harto 2010-11-05 00:30:38

回答

3

如果我們看一下在彼得·諾維格的web page for the book發現auxfns.lisp,有此位

(eval-when (eval compile load) 
    ;; Make it ok to place a function definition on a built-in LISP symbol. 
    #+(or Allegro EXCL) 
    (dolist (pkg '(excl common-lisp common-lisp-user)) 
    (setf (excl:package-definition-lock (find-package pkg)) nil)) 

    ;; Don't warn if a function is defined in multiple files -- 
    ;; this happens often since we refine several programs. 
    #+Lispworks 
    (setq *PACKAGES-FOR-WARN-ON-REDEFINITION* nil) 

    #+LCL 
    (compiler-options :warnings nil) 
) 

這表明它應該在弗朗茨快板,清醒Lisp語言,或Lispworks

7

上班那些不是功能。那些是可變綁定。並非所有在表單中首先出現的東西都是函數的名稱;封閉形式可能會給內部形式帶來特殊的含義。例如,例如let

(let ((action 42) 
     (result 51)) 
    (+ action result)) 

action都不也不result名稱在該示例的功能。

+2

這些*是*綁定。它們由lambda列表引入。 – Xach 2010-11-05 12:50:10

3

Lisp的方言叫做'Common Lisp'。這本書是用相對便攜的Common Lisp編寫的。