[英]What's so inferior about inferior-lisp?
當我開始學習lisp,emacs和ess(Emacs Speaks Statistics)時,我遇到了這個劣質的概念 - 這個或那個。 例如,有一個劣質模式 , 劣質lisp和Inferior Emacs Lisp模式 。
在所有這些情況下,似乎某些解釋語言在emacs中運行,您可以在緩沖區內與它進行交互。 但為什么他們低劣,他們不如什么?
劣質模式是指作為emacs的子過程運行的模式。
例如,當我啟動emacs時,這是我的進程樹:
$ pstree 62238
--= 62238 smt /usr/local/Cellar/emacs/HEAD/Emacs.app/Contents/MacOS/Emacs
在我運行一個劣質的tcl shell后,這就是我的進程樹的樣子:
$ pstree 62238
-+= 62238 smt /usr/local/Cellar/emacs/HEAD/Emacs.app/Contents/MacOS/Emacs
\-+= 62359 smt /bin/sh /usr/bin/wish
\--- 62361 smt /usr/bin/../../System/Library/Frameworks/Tk.framework/Version
另一種說法可能是“劣等”與此上下文中的前綴“sub-”同義。
我認為Inferior Emacs Lisp Mode (ielm)是一個錯誤的名稱。 這應該命名為Interactive Emacs Lisp Mode 。 使用ielm Emacs Lisp並不是作為一個劣等的Lisp運行。 它是內置Emacs Lisp的讀取eval打印循環 。 GNU Emacs確實將其命名為Inferior Emacs Lisp Mode ,但如果查看源代碼,它會直接使用內置的Emacs Lisp eval
來評估表達式。 它只是重用了一些基礎設施( comint )來處理劣質解釋器 (比如Lisps,shell,......)。
通常, Inferior Lisp意味着它是一個受Emacs控制的(通常是外部的)Lisp系統。 它也不需要是Emacs Lisp。 通常它是一些其他Lisp方言,如Common Lisp。 Common Lisp對Emacs和Common Lisp有幾個擴展,因此它作為一個低級Lisp運行,具有很多Lisp開發環境(調試器,檢查器,源定位器......)的功能:
Emacs還有一個簡單的內置工具,用於運行劣質的Lisp : External Lisp 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.