lisp

    2熱度

    1回答

    我想列舉在我的Lisp進程中可用的所有環境變量的列表。我想要C變量environ返回的相同列表。 SBCL和Clozure CL都沒有提供開箱即用的功能。我可以使用CFFI嗎?

    0熱度

    1回答

    該函數的用途是使用lisp計算列表中12的出現次數。 的代碼,我寫道: (defun count12 (x) (if (null x) 0 (if (and (= 1 (car x)) (= 2 (cadr x))) (+ 1 (count12 (cdr x))) (+ 0 (count12 (cdr x))) ) ) )

    2熱度

    1回答

    我在實習面試中被問到做了一個創建函數的R5RS程序,我們假設有兩個子集。這個函數必須返回#t,如果列表L包含兩個元素總數相等且元素個數相同的子集,否則返回#f。它需要輸入列表L(只有正數)和一些參數(我認爲有用,沒有參數數量的條件),所有參數在開始時都等於0。 我仍然記得的要求如下: - 不要定義其他函數並在「two-subsets」函數中調用它們。 - 它只能使用下面的結構:null ?, co

    1熱度

    2回答

    我想要謂詞作爲函數的參數。 (DEFUN per (F L) (cond ((F L) 'working) (T 'anything))) (per 'numberp 3) 因爲導致它提出了一個錯誤: Undefined operator F in form (F L).

    1熱度

    1回答

    我剛開始學習宏函數的概念。 我的老師要求我們創建一個宏函數,其功能與incf完全一樣。 這是他給了我們對流行 (defmacro mypop (nom) (list 'prog1 (list 'car nom) (list 'setq nom (list 'cdr nom)))) 這裏是我想變成一個宏觀的常規功能的例子: (defun iincf (elem &optional nu

    -3熱度

    1回答

    我在lisp編程中很新,所以也許這是一個愚蠢的問題,但無論如何,我有一個數字列表(6000 6100 6200 6200 7200等),我想查找和替換第二個相同的值(將1200加到第二個相同的值),所以結果應該是(6000 6100 6200 7400 7200)。你能幫助我嗎?非常感謝你。

    0熱度

    1回答

    我有興趣使用elisp來實踐一些線性代數算法(速度在這裏不是一個目標) - 但是elisp不支持多維數組,像普通的lisp 我需要最終做一些事情,比如在索引處獲取值,獲取子矩陣,獲取此列,獲取此行等,以編寫算法,分解和其他東西 我該如何去重新創建類似於elisp的? 即。我如何從簡單的數據結構,如列表,並建立矩陣? 我想看看Emacs的鈣 https://github.com/emacs-mirr

    0熱度

    6回答

    我已經寫了幾個Clojure程序,但我幾乎不記得我使用了閉包。 在Clojure中使用閉包的最佳用例是什麼? 另外,您是否可以提供對初學者有用的用例和例子。

    1熱度

    1回答

    我有一些一段代碼: ; Palatal Pulmonic Consonants (loop for e in (list '(:nasal "ɲ") '(:plosive "c") '(:plosive "ɟ") '(:fricative "ç") '(:fricative "ʝ") '(:approximant "j")

    1熱度

    1回答

    我想在Lisp中編寫深度反轉函數,只依賴Lisp提供的原始反轉函數以及其他一些常見的東西。我認爲它使用的地圖,比如是那種比較容易做到這一點: (defun deep-reverse (list) (if (listp list) (mapcar #'deep-reverse (reverse list)) list)) 但是關於不使用這些地圖,