Sto facendo alcune noiose chiamate a un sacco di funzioni, ma i parametri saranno determinati in fase di esecuzione. Ho scritto una semplice funzione per mantenere il mio codice ASCIUTTO ma dargli un nome non è necessario. Non uso questa funzione da nessun'altra parte.Come creare una funzione temporanea in Emacs Lisp
sto cercando di farlo nel modo in cui avrei nello Schema, ma ottengo un errore di void-function
:
(let ((do-work (lambda (x y z)
(do-x x)
(do-y y)
;; etc
)))
(cond (test-1 (do-work 'a 'b 'c))
(test-2 (do-work 'i 'j 'k))))
ho potuto attaccare il tutto in un apply
(ad esempio, (apply (lambda ...) (cond ...))
), ma che non è molto leggibile C'è un modo migliore?
+1. Non mi piacciono davvero i Lisp-2. – progo