使用Emacs Slime,我如何訪問REPL中最後一個表達式返回的對象或值?如何獲取對Emacs中最後一個返回對象的引用Slime
在ipython中它是_
,這樣我可以將它保存在一個變量中,如果返回值是我所期望的。
Slime有沒有類似的東西?
使用Emacs Slime,我如何訪問REPL中最後一個表達式返回的對象或值?如何獲取對Emacs中最後一個返回對象的引用Slime
在ipython中它是_
,這樣我可以將它保存在一個變量中,如果返回值是我所期望的。
Slime有沒有類似的東西?
Common Lisp定義了一些變量,這些變量綁定了前一個表單及其值。它們是:
*
, **
, ***
最近的主要值。/
, //
, ///
最近的值(每個值都是一個列表)。+
, ++
, +++
最新的表格。每次在REPL中評估一個表單(這就是Slime正在做的)時,這些變量是綁定的。 *
,/
和+
是綁定在以前的主要價值,價值觀和形式。 **
,//
和++
被綁定到之前的值*
,/
,//
。 ***
,///
和+++
被綁定在之前的值**
,//
,++
。
Lisp中的函數可能會返回多個值;因此保存主要(第一個)值的*
與保存所有值列表的/
之間的差異。
除了verdammelts答案,您還可以複製和粘貼repl中的對象。有關示例,請參閱this文章(我寫的)中的第三幅圖像。有關更多信息,請參閱Slime手冊的presentations部分。