1 ;;; -*- Mode: Emacs-Lisp -*-
4 ;;; ILISP Common Lisp dialect definition
6 ;;; This file is part of ILISP.
7 ;;; Please refer to the file COPYING for copyrights and licensing
9 ;;; Please refer to the file ACKNOWLEGDEMENTS for an (incomplete) list
10 ;;; of present and past contributors.
12 ;;; $Id: ilisp-cl.el,v 1.4 2002-06-03 23:36:59 wbd Exp $
14 (defvar ilisp-cl-ilisp-package-file "ilisp-pkg.lisp")
16 (defvar ilisp-cl-ilisp-init-file "cl-ilisp.lisp")
22 ;;; 19990806 Martin Atzmueller
23 ;;; Added several package related entries.
25 ;;; 19990806 Marco Antoniotti
26 ;;; MAJOR CHANGE. Changed the name of the dialect to COMMON-LISP
28 (defdialect common-lisp "Common LISP"
30 (setq ilisp-load-or-send-command
31 "(or (and (load \"%s\" :if-does-not-exist nil) t)
32 (and (load \"%s\" :if-does-not-exist nil) t))")
34 ;; The following line is an incredible kludge to bypass the behavior
35 ;; of ilisp-load-init and to stick the package file in front of
37 ;; Check what ilisp-load-init does to understand why I am forced to
39 ;; Marco Antoniotti 19941122
40 (ilisp-load-init 'ilisp-package-kludge ilisp-cl-ilisp-package-file)
42 ;; 19990912 Marco Antoniotti
43 ;; Changed the argument below from 'clisp to 'common-lisp.
44 (ilisp-load-init 'common-lisp ilisp-cl-ilisp-init-file)
45 (setq ilisp-package-separator-regexp
49 ;;; "(nth-value 0 (ignore-errors (let ((*package* *package*)) %s (package-name *package*))))"
50 "(let ((*package* *package*)) (nth-value 0 (ignore-errors %s (package-name *package*))))"
52 ilisp-no-package-in-core-regexp
55 ilisp-fallback-package
56 "\"COMMON-LISP-USER\""
58 ilisp-in-package-command-string
61 ilisp-defpackage-command-string
64 ilisp-package-name-command
65 "(package-name *package*)"
67 ilisp-in-package-command
70 ilisp-hash-form-regexp
71 "\\(^[ \t]*#[+-].\\)\\|\\(^[ \t]*(\\(.*::?\\)?defpackage[ \t\n]\\)\\|\\(^[ \t]*(\\(.*::?\\)?in-package[ \t\n]*\\)"
77 "(progn (ILISP:ilisp-save) %s\n)"
80 "(ILISP:ilisp-restore)"
86 "(ILISP:ilisp-eval \"%s\" \"%s\" \"%s\")"
91 (setq ilisp-defvar-command
92 "(ILISP:ilisp-eval \"(let ((form '%s)) (progn (makunbound (second form)) (eval form)))\" \"%s\" \"%s\")")
94 (setq ilisp-compile-command
95 "(ILISP:ilisp-compile \"%s\" \"%s\" \"%s\")"
97 ilisp-describe-command
98 "(ILISP:ilisp-describe \"%s\" \"%s\")"
100 ilisp-inspect-command
101 "(ILISP:ilisp-inspect \"%s\" \"%s\")"
103 ilisp-arglist-command
104 "(ILISP:ilisp-arglist \"%s\" \"%s\")")
106 (setq ilisp-documentation-types
107 '(("function") ("variable")
108 ("structure") ("type")
110 ("(qualifiers* (class ...))")))
112 (setq ilisp-documentation-command
113 "(ILISP:ilisp-documentation \"%s\" \"%s\" \"%s\")")
115 (setq ilisp-macroexpand-1-command
116 "(ILISP:ilisp-macroexpand-1 \"%s\" \"%s\")")
118 (setq ilisp-macroexpand-command
119 "(ILISP:ilisp-macroexpand \"%s\" \"%s\")")
121 (setq ilisp-complete-command
122 "(ILISP:ilisp-matching-symbols \"%s\" \"%s\" %s %s %s)")
124 (setq ilisp-locator 'lisp-locate-clisp)
126 (setq ilisp-source-types
127 '(("function") ("macro") ("variable")
128 ("structure") ("type")
130 ("(qualifiers* (class ...))")))
132 (setq ilisp-callers-command
133 "(ILISP:ilisp-callers \"%s\" \"%s\")"
136 "(ILISP:ilisp-trace \"%s\" \"%s\" \"%s\")"
138 ilisp-untrace-command
139 "(ILISP:ilisp-untrace \"%s\" \"%s\")")
141 (setq ilisp-directory-command
142 "(namestring *default-pathname-defaults*)"
144 ilisp-set-directory-command
145 "(setq *default-pathname-defaults* (parse-namestring \"%s\"))")
148 ;; 19990912 Marco Antoniotti
149 ;; This is probably the best and simplest way to fix things.
150 ;; cfr. Hannu Koivisto's posting on 'ilisp@cons.org'.
152 (setf ilisp-binary-command
153 "(pathname-type (compile-file-pathname \"ILISP-DUMMY-STRING\"))"
155 ilisp-init-binary-command ilisp-binary-command)
157 (setq ilisp-load-command
160 (setq ilisp-compile-file-command
161 "(ILISP:ilisp-compile-file \"%s\" \"%s\")")
163 (setq ilisp-print-info-message-command
164 "(ILISP:ilisp-print-info-message \"%s\" \"%s\")" ))
166 ;;; end of file -- ilisp-cl.el --