Initial Commit
[packages] / xemacs-packages / ilisp / ilisp-ccl.el
1 ;;; -*- Mode: Emacs-Lisp -*-
2
3 ;;; ilisp-ccl.el --
4
5 ;;; This file is part of ILISP.
6 ;;; Version: 5.12
7 ;;;
8 ;;; Copyright (C) 1990, 1991, 1992, 1993 Chris McConnell
9 ;;;               1993, 1994 Ivan Vasquez
10 ;;;               1994, 1995, 1996 Marco Antoniotti and Rick Busdiecker
11 ;;;               1996, 1997, 1998, 1999 Marco Antoniotti and Rick Campbell
12 ;;;               2000 Reini Urban
13 ;;;
14 ;;; Other authors' names for which this Copyright notice also holds
15 ;;; may appear later in this file.
16 ;;;
17 ;;; Send mail to 'majordomo@cons.org' to be included in the
18 ;;; ILISP mailing list. 'ilisp@cons.org' is the general ILISP
19 ;;; mailing list were bugs and improvements are discussed.
20 ;;;
21 ;;; ILISP is freely redistributable under the terms found in the file
22 ;;; COPYING.
23
24 ;;;
25 ;;; Dialect definition for Corman Common Lisp by Roger Corman 
26 ;;; Since 1.4 (fixed with 1.41) there is a debugger with corman.
27
28 (require 'cl)
29
30 ;;; cormanlisp --
31 ;;;
32 ;;; Notes:
33 ;;; 2000-09-08 16:01:20 rurban
34 ;;;   created, based on chs and acl
35 ;;; Problems: 
36 ;;;  * win32 pathdelims get lost on C-c l, but a manual load works.
37 ;;;  * subsequent invocations load the next lisp (clisp in my case) 
38 ;;;    instead of corman.
39
40 ; Hint:
41 ; Best is to load cl-ilisp.lisp, ilisp-pkg.lisp and cormanlisp.lisp 
42 ; with all required corman patches into cormanlisp at first and save 
43 ; the image.
44 ;
45 ; On cygwin (X)Emacs we have to convert the filenames passed to the lisp.
46 ; ilisp-hi.el:   file-name-hack for elisp
47 ; cl-ilisp.lisp: ilisp-w32-fix-filenames for lisp
48 ; ilisp-cl-easy-menu.el
49 ;   added a Debugger menu section for XEmacs (easy-menu)
50
51 ; Old ILISP Patches for 5.11:
52 ;   http://xarch.tu-graz.ac.at/autocad/lisp/cormanlisp/ilisp-ccl-5.11.zip
53 ; Cormanlisp fixes: (required for at least CCL 1.5)
54 ;   http://xarch.tu-graz.ac.at/autocad/lisp/cormanlisp/ccl-1.5-patches.zip
55
56 ; Todo: custom vars for these.
57 ; We really should query the registry. The dll is registered there, 
58 ; so we would also know the version.
59 ; A XEmacs dynamic w32reg emodule is almost ready:
60 ;   http://xarch.tu-graz.ac.at/autocad/lsp_tools/ntemacs/emodules/w32reg/w32reg.c
61
62 ; define these in ~/.ilisp
63 ;(setq *cormanlisp-dir* "P:/CORMAN~1/CORMAN~1.5/")
64 (unless (boundp '*cormanlisp-dir*)
65   (setq *cormanlisp-dir* "C:/PROGRAM~1/CORMAN~1/CORMAN~1.5/"))
66
67 (unless (boundp 'cormanlisp-program)
68   (setq cormanlisp-program
69         (concatenate 'string *cormanlisp-dir* "clconsole.exe" 
70                      " -image " *cormanlisp-dir* "CormanLisp.img")))
71
72 ;(defvar ilisp-cormanlisp-init-file
73 ;       (concatenate 'string *cormanlisp-dir* "init.lisp"))
74 (defvar ilisp-cormanlisp-init-file "cormanlisp.lisp")
75
76 (defdialect cormanlisp "CormanLisp" common-lisp
77   (ilisp-load-init 'ilisp-package-kludge ilisp-cl-ilisp-package-file)
78   (ilisp-load-init 'common-lisp ilisp-cl-ilisp-init-file)
79   (ilisp-load-init 'cormanlisp ilisp-cormanlisp-init-file)
80   (setq
81      ilisp-error-regexp  "\\(ILISP:[^\n]*\\)\\|\\(^;;; An error occurred\\)"
82      ilisp-find-source-command  "(ILISP:ilisp-source-files \"%s\" \"%s\" \"%s\")"
83      ilisp-reset "(debug::debugger-continue)"
84      ilisp-block-command "(progn %s)"
85      ;; cl overrides
86      ilisp-inspect-command nil           ; no inspector
87      ilisp-load-no-compile-query t       ; don't ask "Compile first"
88 ;     ilisp-binary-extension nil ; "fasl" ; avoid compilation
89 ;     ilisp-compile-file-command nil      ; avoid compilation
90
91 ;     ilisp-*use-frame-for-output* nil    ; this should go to .ilisp
92 ;     ilisp-bindings-*bind-space-p* nil    ; this should go to .ilisp
93      ;; default
94      comint-prompt-regexp "^?*"
95      ;; comint-prompt-regexp "^\\([0-9]+\\. Break \\[[0-9]+\\]> \\|^[^>]*> \\)"
96      comint-fix-error ":C 1"
97      comint-continue ":C"
98    )
99
100   ;; ILD Support. NIL values mean that more work is needed or that the
101   ;; particular command is not available
102
103   (setq ild-abort-string ":QUIT"
104         ild-continue-string ":C 1"
105         ild-next-string ":NEXT"
106         ild-next-string-arg nil
107         ild-previous-string ":PREVIOUS"
108         ild-previous-string-arg nil
109         ild-top-string ":TOP"
110         ild-bottom-string ":BOTTOM"
111         ild-backtrace-string ":BACKTRACE"
112         ild-locals-string nil
113         ild-local-string-arg nil
114         ;ild-return-string "return"
115         ;ild-retry-string "redo"
116         ;ild-trap-on-exit-string "break+"
117         ))
118
119 (provide 'ilisp-ccl)
120
121 ;;; end of file -- ilisp-chs.el --