annotate lisp/ilisp/ilisp-kcl.el @ 164:4e0740e5aab2

Added tag r20-3b8 for changeset 0132846995bd
author cvs
date Mon, 13 Aug 2007 09:43:39 +0200
parents b82b59fe008d
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1 ;;; -*- Mode: Emacs-Lisp -*-
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3 ;;; ilisp-kcl.el --
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5 ;;; This file is part of ILISP.
4
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
6 ;;; Version: 5.8
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
7 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
8 ;;; Copyright (C) 1990, 1991, 1992, 1993 Chris McConnell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
9 ;;; 1993, 1994 Ivan Vasquez
4
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
10 ;;; 1994, 1995, 1996 Marco Antoniotti and Rick Busdiecker
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
11 ;;; 1996 Marco Antoniotti and Rick Campbell
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
12 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
13 ;;; Other authors' names for which this Copyright notice also holds
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
14 ;;; may appear later in this file.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
15 ;;;
4
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
16 ;;; Send mail to 'ilisp-request@naggum.no' to be included in the
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
17 ;;; ILISP mailing list. 'ilisp@naggum.no' is the general ILISP
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
18 ;;; mailing list were bugs and improvements are discussed.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
19 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
20 ;;; ILISP is freely redistributable under the terms found in the file
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
21 ;;; COPYING.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
22
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
23
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
24 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
25 ;;; ILISP Kyoto Common Lisp dialect definition
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
26 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
27
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
28 ;;;%%%KCL--these dialects by Tom Emerson
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
29 ;;; kcl-check-prompt doesn't after the first break because the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
30 ;;; number of ">" characters doesn't increase.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
31
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
32 (defun kcl-check-prompt (old new)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
33 "Compare the break level printed at the beginning of the prompt."
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
34 (let* ((was-in-break (and old (string-match ">+" old)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
35 (old-level (if was-in-break
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
36 (- (match-end 0) (match-beginning 0))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
37 0))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
38 (is-in-break (string-match ">+" new))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
39 (new-level (if is-in-break
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
40 (- (match-end 0) (match-beginning 0))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
41 0)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
42 (<= new-level old-level)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
43
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
44 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
45 (defdialect kcl "Kyoto Common LISP" clisp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
46 (setq comint-prompt-regexp "^>+"
4
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
47 ilisp-error-regexp "Error: [^\n]*"
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
48 ilisp-binary-extension "o"
4
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
49 ilisp-init-binary-extension "o"
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
50 ilisp-binary-command "\"o\""
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
51 comint-fix-error ":q"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
52 comint-continue ":r"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
53 comint-prompt-status
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
54 (function
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
55 (lambda (old line)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
56 (comint-prompt-status old line 'kcl-check-prompt)))))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
57 (if (not kcl-program) (setq kcl-program "kcl"))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
58
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
59 ;;;%%%AKCL
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
60 (defdialect akcl "Austin Kyoto Common LISP" kcl)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
61 (if (not akcl-program) (setq akcl-program "akcl"))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
62
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
63
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
64 ;;;%%%IBCL
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
65 (defdialect ibcl "Ibuki Common LISP" kcl
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
66 (setq comint-prompt-regexp "^[-A-Z]*>+\\|^[-A-Z]* ->"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
67 comint-interrupt-regexp ">>Condition: Terminal Interrupt"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
68 comint-continue ":q"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
69 ilisp-reset ":q!"
4
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
70 ilisp-error-regexp ">>Error:[^\n]*"))
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
71 (if (not ibcl-program) (setq ibcl-program "ibcl"))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
72
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
73
4
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
74 ;;; GCL and ECL (at least) have slightly different compilers and
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
75 ;;; runtimes, hence we need to provide different extensions for their
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
76 ;;; init files.
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
77 ;;; Marco Antoniotti <marcoxa@icsi.berkeley.edu> 19951028.
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
78
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
79 ;;; GCL -- I assume it is exactly as AKCL.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
80 ;;; Should check whether it is similar to IBUKI.
4
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
81 (defdialect gcl "GNU Common LISP" akcl
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
82 (setq comint-prompt-regexp "^>+"
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
83 ilisp-binary-extension "o"
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
84 ilisp-init-binary-extension "gcl.o"
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
85 ilisp-binary-command "\"o\""
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
86 ilisp-init-binary-command "\"gcl.o\""
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
87 ))
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
88 (if (not gcl-program) (setq gcl-program "gcl"))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
89
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
90
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
91 ;;; ECL -- Beppe Attardi's developments over AKCL
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
92
4
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
93 (defdialect ecl "EcoLisp Common LISP" akcl
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
94 (setq comint-prompt-regexp "^>+"
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
95 ilisp-binary-extension "o"
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
96 ilisp-init-binary-extension "ecl.o"
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
97 ilisp-binary-command "\"o\""
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
98 ilisp-init-binary-command "\"ecl.o\""
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
99 ))
b82b59fe008d Import from CVS: tag r19-15b3
cvs
parents: 0
diff changeset
100 (if (not ecl-program) (setq ecl-program "ecl"))
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
101
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
102 ;;; end of file -- ilisp-kcl.el --