29 июля 2011

Common Lisp. SBCL. Ускорение загрузки фреймворков.

Updated!
Ниже перечисленное работает для cl-gtk2:) И работает для restas:)
Для удобства запуска cl-gtk2 следует запустить sbcl, загрузить библиотеку и сохранить cl-машину в таком состоянии.

$ sbcl --no-userinit 
* (require :asdf) 
* (asdf:load-system :cl-gtk2) 
* (sb-ext:save-lisp-and-die "sbcl-gtk-image" :executable t) 

Для restas


$ sbcl --no-userinit 
* (require :asdf) 
* (asdf:load-system :restas) 
* (sb-ext:save-lisp-and-die "sbcl-restas" :executable t)


Затем в редакторе emacs настроить несколько cl-машин для slime.

(setq slime-lisp-implementations 
 '((sbcl ("sbcl")) 
 (sbcl-gtk ("sbcl-gtk-image")) 
 (sbcl-restas ("sbcl-restas"))
 (clisp ("clisp" "-ansi" "-K" "full" "-I"))))


Для запуска slime с выбором cl-машины.

C-u - M-x slime RET