Thursday, May 19, 2011

CLisp, Allegro CL, and Emacs

Lisp
Common Lisp
Allegro CL

1. Download Free Trial Version: allegro-express

2. Refer to the installation document:
http://www.franz.com/support/documentation/8.2/doc/installation.htm#express-inst-win

3. Install
j:/home/bin/acl82express

4. Select Rebuild images which will download patches
(or download patches first, and run update.exe)

5. Edit .emacs (j:/home/yjy/.emacs)

; This is sample code for starting and specifying defaults to the
; Emacs-Lisp interface.

(push "j:/home/bin/acl82express/eli" load-path)

(load "fi-site-init.el")

;

(setq fi:common-lisp-image-name "j:/home/bin/acl82express/allegro-express.exe")

(setq fi:common-lisp-image-file "j:/home/bin/acl82express/allegro-express.dxl")

(setq fi:common-lisp-directory "j:/home/bin/acl82express")

6. Make other images
In the allegro cl shell terminal, type the follwings.

;; mlisp:
(progn
(build-lisp-image "sys:mlisp.dxl" :case-mode :case-sensitive-lower
:include-ide nil :restart-app-function nil
:restart-init-function nil)
(when (probe-file "sys:mlisp.exe")
(delete-file "sys:mlisp.exe"))
(sys:copy-file "sys:allegro-express.exe" "sys:mlisp.exe"))

;; alisp:
(progn
(build-lisp-image "sys:alisp.dxl" :case-mode :case-insensitive-upper
:include-ide nil :restart-app-function nil
:restart-init-function nil)
(when (probe-file "sys:alisp.exe")
(delete-file "sys:alisp.exe"))
(sys:copy-file "sys:allegro-express.exe" "sys:alisp.exe"))

;; allegro:
(progn
(build-lisp-image "sys:allegro.dxl" :case-mode :case-sensitive-lower)
(when (probe-file "sys:allegro.exe") (delete-file "sys:allegro.exe"))
(sys:copy-file "sys:allegro-express.exe" "sys:allegro.exe"))

*allegro-express: default downloaded file. includes IDE and is in International ANSI mode (case insensitive upper)
*mlisp: Modern base Lisp image, international (16-bit characters, case sensitive lower)
*alisp: ANSI base Lisp image, international (16-bit characters, case insensitive upper)
*allegro: Modern IDE image, international (16-bit characters, case sensitive lower)

7. Run allegro within Emacs
M-x lisp-mode

M-x fi:common-lisp

8. Exit allegro in Emacs
(exit)

9. Additional Auto-interaction
Add the following to .emacs
It will run Allegro CL by typeing M-x run-lisp

;;;;;;;;;;;;;;;;;;;;;;
;;Auto interaction
;;Type M-x run-lisp in emacs instead of typing *common-lisp*
;;

(defun run-lisp ()

(interactive)

(fi:common-lisp "*common-lisp*"

"j:/home/bin/acl82express/"

"j:/home/bin/acl82express/allegro-express.exe"

'("+B" "+cn")

"localhost"
"j:/home/bin/acl82express/allegro-express.dxl"))


*. Emacs Commands
c-h-f: functions
c-h-f & fi:
c-h-v: variables
c-h-v & fi:
c-h-t: tutorial
c-h-i: info
h: help on info

New2Lisp: http://www.franz.com/newtolisp/index.html
Tutorial: http://www.franz.com/support/tutorials/index.html
http://www.franz.com/support/documentation/8.1/doc/eli.htm#dot-emacs-2
http://www.franz.com/services/classes/

No comments:

Post a Comment