newlisp

    0熱度

    5回答

    我使用ECL和newlisp運行面函數。 ECL: >(defun fac (n) (if (= n 1) 1 (* n (fac (- n 1))))) >(fac 20) 22432902008176640000 >(fac 30) 2265252859812191058636308480000000 >(fac 40) 815915283247897734345611269596

    1熱度

    2回答

    修改關聯列表的條目時遇到問題。當運行此代碼 實施例A (set 'Dict '(("foo" "bar"))) (letn (key "foo" entry (assoc key Dict)) (setf (assoc key Dict) (list key "new value"))) (println Dict) 結果是: (("foo" "new value

    -2熱度

    1回答

    我想要一個函數,它接受一個整數並以church encoded函數的形式返回該數字。 我在newlisp實現這一點: (define (reduce stencil sq) (apply stencil sq 2)) (define (num n) (cond ((= n 0) 'x) ((< n 2) '(f x)) (true (reduce (fn (l i)

    1熱度

    1回答

    我開始學習newlisp,但引用和'拼圖我。 > (= '(quote 1) ''1) nil 在newlisp 或 > (first (quote (quote 1))) quote > (first ''1) ERR: array, list or string expected in function first : ''1 ,報價是'有什麼不同? 或者,這是一個錯誤?

    10熱度

    1回答

    This page對我來說一直很困惑。 它說:在newLISP 內存管理不依賴於一個垃圾收集算法。內存未標記或引用計數。而是在創建內存對象後立即決定是否刪除新創建的內存對象。 newLISP遵循一個僅供參考(ORO)規則。在表達式評估期間,一旦newLISP達到更高的評估級別,每個未被符號引用的內存對象就會過時。 newLISP中的對象(不包括符號和上下文)通過值複製傳遞給其他用戶定義的函數。因此

    1熱度

    2回答

    所以我有這樣的功能: (define (try try-block catch-block finally-block) ; Implements try/catch/finally like in most other languages ) 爲此,我想創建一個「助手」宏避免了說(lambda() ...)一遍又一遍,有點像set和setq需要: (define-macr

    1熱度

    2回答

    如果找到匹配項,我在處理如何返回一行文本時遇到了一些麻煩。 (set 'wireshark "http://anonsvn.wireshark.org/wireshark/trunk/manuf") (set 'arptable (map (fn (x) (parse x " ")) (exec "arp -a"))) (define (cleanIPaddress x) (sl

    1熱度

    2回答

    我需要遍歷所有的字符給定的字符串中 - 在Ruby中,我會做這樣的事情: string = "blah" string.each_char do |c| puts c end 如何在newLisp做到這一點?

    1熱度

    1回答

    至於我已經找到了,這是有可能的 - 入 - 「連接」,並與newLISP二進制分發newLISP腳本來創建一個單一的文件可執行文件。現在我想爲使用newLISP gui服務器的應用程序執行此操作,就像使用newLISP提供的newLISP IDE一樣。我有與此相關的一些問題: 我想知道需要什麼來建立這樣一個應用程序,只是把它包起來像newLISP IDE? 我有一個看看包的內容,似乎,有在那裏一些