lisp

    19熱度

    3回答

    現在,我所做的每件事都可以放在一個單獨的源文件中,而且這個文件非常小。你如何決定將多少和什麼分解成單獨的文件? 使用Java,很容易決定一個文件中的內容(已經決定了你),但是在Lisp中,我發現我編寫了許多彼此構建的小函數,並且很難決定如果任何東西都應該分開。當我在Lisp中處理更大的項目時,最好不要重新發明輪子,但我在網上找不到關於此的大量具體信息。 你可以分享一些處理Lisp中較大項目的策略,

    7熱度

    2回答

    我想知道如何將一個lisp解釋器嵌入到gui應用程序中,即類似於pyshell爲Python所做的一樣。

    13熱度

    5回答

    我應該使用 (apply + (filter prime? (range 1 20))) 或 (reduce + (filter prime? (range 1 20))) 編輯:這是首要Clojure中從優化工具包中的源。 (defn prime? [n] (cond (or (= n 2) (= n 3)) true (or (divisible? n

    14熱度

    1回答

    我可以同時在emacs中使用Common Lisp和Clojure嗎? 我想每個lisp-REPL放在它自己的緩衝區中,如果我這樣做了,我怎麼能控制哪個緩衝區發送它的數據到哪個lisp?

    6熱度

    2回答

    設計一個小單元測試宏我有一個小單元測試宏 (defmacro is [expr value] `(if (= ~expr ~value) 'yes (println "Expected " ~value "In" ~expr "But Evaluated to" ~expr))) 如何正確地寫入錯誤消息? 現在它給 Clojure 1.0.0- 1:1

    5熱度

    5回答

    我開始給我寫一些Common Lisp,並且只是將一些東西放在一起並對它們進行格式化。 讓我們假設我有一個ALIST,像這樣: (defvar *map* '((0 . "zero") (1 . "one") (2 . "two"))) 如何格式化這樣嗎? 0: zero 1: one 2: two 我想這樣(format t "~{~{~a: ~a~}~%~}" *map*),而是給

    7熱度

    3回答

    我已經開始通過Practical Common Lisp工作,並且正在尋找一個適用於Eclipse的通用LISP實現。如果它除了編輯器和REPL之外還有某種IDE集成(儘管我不確定那是什麼),那將會很好。另外,我有Linux,Windows和OS X,儘管我的主工作站是Mac,所以OS X的支持是首選。

    8熱度

    1回答

    我知道: (cons [p] [q]) is ((s ((s i) (k [p]))) (k [q])) (car [lst]) is ([lst] k) (cdr [lst]) is ([lst] (k i)) 我想寫這樣 (cons [a] (cons [b] (cons [c] [nil]))) 名單,這將是這樣的: ((s ((s i) (k [a]))) (k ((s ((s

    15熱度

    4回答

    Reddit上的人帶來了這個代碼了我的注意: main = do let ns = [print 1, print 2, print 3] sequence_ ns sequence_ $ reverse ns sequence_ $ tail ns ++ [head ns] head ns 這是怎麼回事是我們有,我們可以做的東西有,像反向或得

    14熱度

    11回答

    我的Lisp經驗大部分來自Elisp。因此,我發現自己只是偶爾寫Lisp。當我回到它時,我經常忘記car和cdr之間的區別,並需要引用文檔來慢跑我的記憶。 您使用什麼類型的智能助記符來記住命名根源於1954 era computer architectures(car,cdr,cadr,caar,cddr等)的Lisp函數之間的區別? 此外,爲什麼first和rest這些知名別名獲得了更多的吸引力