Ho configurato melma per emacs e posso eseguire molte diverse implementazioni di lisp comune. Che dire di usare una lingua come il clojure?
Ho provato questo modificando il mio .emacs
file:
(add-to-list 'load-path "~/slime/") ; your SLIME directory
(setq slime-lisp-implementations
`((sbcl ("/usr/bin/sbcl"))
(clojure ("/usr/bin/clojure"))
(ecl ("/usr/bin/ecl"))
(clisp ("/usr/bin/clisp" "-q -I"))))
;(setq inferior-lisp-program "/usr/bin/sbcl") ; your Lisp system
(require 'slime)
(slime-setup '(slime-fancy))
Sembra funzionare ma c'è un'eccezione:
(progn (load "/home/d2b2/slime/swank-loader.lisp" :verbose t) (funcall (read-from-string "swank-loader:init")) (funcall (read-from-string "swank:start-server") "/tmp/slime.19396"))
Inoltre ricevo uno strano messaggio nel mini-buffer:
polling "/tmp/slime2.4708" .. ddd (Abort with M-x 'slime-abort-connection'.)
dove ddd
aumenta un timer in pochi secondi.
Clojure 1.1.0
user=> java.lang.Exception: Unable to resolve symbol: progn in this context (NO_SOURCE_FILE:1)
user=> user=>
Ho deciso di eseguire un interprete commonlisp e confrontarlo. Questo è quello che ottengo dall'interpeter sbcl
prima di ricevere un prompt:
(progn (load "/home/d2b2/slime/swank-loader.lisp" :verbose t) (funcall (read-from-string "swank-loader:init")) (funcall (read-from-string "swank:start-server") "/tmp/slime.19396"))
This is SBCL 1.0.55.0.debian, an implementation of ANSI Common Lisp.
More information about SBCL is available at <http://www.sbcl.org/>.
SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses. See the CREDITS and COPYING files in the
distribution for more information.
*
; loading #P"/home/d2b2/slime/swank-loader.lisp"
STYLE-WARNING: redefining EMACS-INSPECT (#<BUILT-IN-CLASS T>) in DEFMETHOD
STYLE-WARNING:
Implicitly creating new generic function STREAM-READ-CHAR-WILL-HANG-P.
WARNING: These Swank interfaces are unimplemented:
(DISASSEMBLE-FRAME SLDB-BREAK-AT-START SLDB-BREAK-ON-RETURN)
;; Swank started at port: 57199.
57199
* STYLE-WARNING:
redefining THREAD-FOR-EVALUATION (#<STRUCTURE-CLASS
MULTITHREADED-CONNECTION>
#<SB-MOP:EQL-SPECIALIZER
{1004A8CC43}>) in DEFMETHOD
Quindi viene visualizzato l'interprete lisp comune.
- Come configuro un clojure sostitu con melma o come posso risolvere il mio piccolo problema?