0
|
1 ;;; -*- Mode: Emacs-Lisp -*-
|
|
2
|
|
3 ;;; ilisp-s2c.el --
|
|
4
|
|
5 ;;; This file is part of ILISP.
|
4
|
6 ;;; Version: 5.8
|
0
|
7 ;;;
|
|
8 ;;; Copyright (C) 1990, 1991, 1992, 1993 Chris McConnell
|
|
9 ;;; 1993, 1994 Ivan Vasquez
|
4
|
10 ;;; 1994, 1995, 1996 Marco Antoniotti and Rick Busdiecker
|
|
11 ;;; 1996 Marco Antoniotti and Rick Campbell
|
0
|
12 ;;;
|
|
13 ;;; Other authors' names for which this Copyright notice also holds
|
|
14 ;;; may appear later in this file.
|
|
15 ;;;
|
4
|
16 ;;; Send mail to 'ilisp-request@naggum.no' to be included in the
|
|
17 ;;; ILISP mailing list. 'ilisp@naggum.no' is the general ILISP
|
0
|
18 ;;; mailing list were bugs and improvements are discussed.
|
|
19 ;;;
|
|
20 ;;; ILISP is freely redistributable under the terms found in the file
|
|
21 ;;; COPYING.
|
|
22
|
|
23
|
|
24 ;From: Jeffrey Mark Siskind <qobi@cs.toronto.edu>
|
4
|
25 ;To: ilisp@naggum.no
|
0
|
26 ;Subject: ILisp 5.5 and Scheme->C
|
|
27 ;Reply-To: Qobi@cs.toronto.edu
|
|
28 ;Date: Thu, 15 Dec 1994 22:55:05 -0500
|
|
29
|
|
30 ;Is anybody using ILisp 5.5 with Scheme->C? I don't know much about the
|
|
31 ;internals of ILisp and have created a defdialect by analogy with the other
|
|
32 ;defdialect forms.
|
|
33
|
|
34 (defdialect qsci "Qobi Scheme->C" scheme
|
|
35 (setq comint-fix-error ":X"
|
|
36 ilisp-reset ":A"
|
|
37 comint-continue ":C"
|
|
38 comint-interrupt-regexp ">>Interrupt:"
|
|
39 ilisp-eval-command
|
|
40 "(begin (eval (read (open-input-string \"%s\"))) \"%s\" \"%s\")"
|
|
41 ilisp-package-command "%s" ;needs work
|
|
42 ilisp-block-command "(begin %s)"
|
|
43 ilisp-load-command "(loadq \"%s\")"
|
|
44 ilisp-load-or-send-command "(begin \"%s\" (ld \"%s\"))"
|
|
45 ild-abort-string ":A"
|
|
46 ild-continue-string ":C"
|
|
47 ild-next-string ":N"
|
|
48 ild-previous-string ":P"
|
|
49 ild-top-string ":<"
|
|
50 ild-bottom-string ":>"
|
|
51 ild-backtrace-string ":B")
|
|
52 (ilisp-load-init 'qsci "/u/qobi/emacs/qsci"))
|
|
53
|
|
54 (cond ((or (equal (system-name) "qobi.ai")
|
|
55 (equal (system-name) "dvp.cs")
|
|
56 (equal (system-name) "qew.cs"))
|
|
57 (setq qsci-program "/u/qobi/bin/sun4/5.3/qsci"))
|
|
58 (t (setq qsci-program "/u/qobi/bin/sun4/4.1.2/qsci")))
|
|
59
|
|
60 ;The strange thing is that sometimes it works and sometimes it doesn't. And I
|
|
61 ;am having difficulty figuring out what I am doing wrong. I should mention that
|
|
62 ;I am using a customized version of Scheme->C (qsci) that has my own debugger
|
|
63 ;instead of the default one. My debugger provides Lucid-like commands for
|
|
64 ;moving up and down the stack, displaying backtraces and locals, aborting,
|
|
65 ;continuing, etc. I will give any interested party a copy of my enhancements to
|
|
66 ;Scheme->C. I also use the debugger with ILD, my extension to ILisp 5.5 that
|
|
67 ;provides a uniform set of single keystroke commands for accessing the
|
|
68 ;different CommonLisp/Scheme debuggers. That explains the ild-* bindings above.
|
|
69
|
|
70 ;Here are my questions: What are the appropriate values for comint-fix-error,
|
|
71 ;ilisp-reset, comint-continue, comint-interrupt-regexp, ilisp-eval-command,
|
|
72 ;ilsip-package-command, ilisp-block-command, ilisp-load-command,
|
|
73 ;and ilisp-load-or-send-command. What exactly should these control strings do?
|
|
74 ;What % arguments do they take. The minimum functionality I would like to have
|
|
75 ;is the ILisp commands c-z l and c-z e. Later on I would like to add c-z a,
|
|
76 ;m-TAB, and m-. but I realize that I'll need to add hooks in Scheme->C for
|
|
77 ;these. I would ideally like to modify c-z D and c-z A to look things
|
|
78 ;up in R4RS.
|
|
79
|
|
80 ; Jeff (home page http://www.cdf.toronto.edu/DCS/Personal/Siskind.html)
|
|
81
|
|
82 ;;; end of file -- ilisp-scc.el --
|