[slime-devel] SLIME48: a Swank back end in Scheme48
Brian Mastenbrook
brian at mastenbrook.net
Fri Sep 16 12:34:03 UTC 2005
On Sep 16, 2005, at 6:14 AM, Helmut Eller wrote:
> * Taylor Campbell [2005-09-16 04:58+0200] writes:
>
>
>
>> I think my question might have been lost in the traffic of the
>> mailing
>> list, so I'll ask once more: several people, including Marco
>> Baringer,
>> have suggested that it might be a good idea to add the Scheme48 back
>> end to the main SLIME CVS source repository. I could fork SLIME to
>> support the small changes needed for SLIME48 myself, but that would
>> really be a pain to maintain, and I'd like SLIME48 to work pretty
>> much
>> out of the box. What do the SLIME developers/maintainers think about
>> this?
>>
>>
>
> When Luke announced SLIME, the bit I liked most about it was this:
>
> The goal is to make Emacs support CMU Common Lisp as well as it
> supports Emacs Lisp. The strategy is to take maximum advantage of
> all CMUCL features and hooks, portability be damned to hades.
>
> Compatibility with other Common Lisps is not a goal.
>
> Sadly, the goals shifted a bit since then.
>
I don't think very many people would agree that this is "sadly". If
this is the way you feel, however, I'm sure that there are enough
people who prefer using SLIME on other Common Lisps to sustain a fork
of the project.
> I'm not that excited about supporting every Frankenstein Lisp on the
> planet, just because we can. And frankly, who wants to use a Lisp
> which doesn't even have docstrings?
>
Taylor's goal in this project was to make a good Emacs IDE for
Scheme48, not to make SLIME support "every Frankenstein Lisp". SLIME
was just the tool he chose to make this happen.
> If you want to add your code to our CVS repo, it should be clear that
> Scheme is only a second class citizen here, and that we have limited
> motivation to make/keep the protocol working with the Scheme server.
>
Why does that need to be? Why can't Taylor just maintain the Scheme48
support to the best level possible, just as is done with the other
backends?
> On the technical side, Scheme has continuations but SLIME assumes that
> the Lisp is stack oriented. I haven't thought too much about it, but
> there will likely be problems if somebody calls a continuation
> multiple times. Also, interrupting doesn't seem to work with your
> backend, or not in the way I expected it.
>
I'm not sure what those problems would be. Can you clarify?
SLDB works just fine: the current continuation can be presented as a
"stack", and this is exactly how it's done in the Scheme48 REPL too.
> If you still want to add your code to SLIME and nobody (hi Luke :-)
> has objections, I'll do the initial check-in and ask the cl.net admins
> to give CVS permissions.
>
> I'll probably put it in a swank-scheme48 directory and I would also
> like to remove the -*- mode: scheme48; package: (exec) -*- lines
> because few people have a scheme48-mode and turning `package' into a
> buffer local variable isn't wise either.
>
--
Brian Mastenbrook
brian at mastenbrook.net
http://brian.mastenbrook.net/
More information about the slime-devel
mailing list