Helmut,
I've emailed you separately, but thanks for the comments. If no one else thinks it would be useful, I can easily be persuaded to work on something else. I've got a rough design floating around in my head that would use the existing definition support in swank plus some additional functionality from imenu. I looked at the way Franz eli does it and it's sort of similar to the way I was thinking of doing it. I don't think it would be too difficult to implement, but I would like to spend my time working on something that others would find useful. As I said to Helmut, I'm more in the mindset of "I'd like to contribute in ways folks will find useful", rather than "I've got to get feature X into slime".
On Wed, 16 Jun 2004 23:27:11 +0200, Helmut Eller wrote:
Glenn Ehrlich glenn.ehrlich.lists@cox.net writes:
I'm thinking of modeling this after the changed definitions of Genera (from my new lisp machine :) or LispWorks.
How does it work on the Lisp Machine?
The way it works in LispWorks is exactly the same way it works on the Lisp Machine, same keystroke bindings, too, I think. Basically, meta shift e evaluates all changed definitions in the current buffer (yes, I know that emacs doesn't recognize the shift modifier, but zmacs does) and meta shift c compiles the changed defintions in the current buffer. There's similar commands for doing the same for all buffers, but they aren't bound to any keystrokes. The definition of changed is roughly "edited since last sent to Lisp".
I speculated in my reply to Helmut that maybe development styles are different nowadays vs. back then on the LispM. For example, the default configuration creates an unlimited number of versioned files (indicated by a trailing number i.e., "foo.lisp.1", "foo.lisp.2", etc). I unconsciously save very frequently, which when done on a LispM creates a *ton* of versioned files. I speculate that maybe it was normal to have lots of unsaved buffers throughout the day and that you needed a convenient way of evaluating or compiling the changed stuff without going through all of your buffers individually.
[BTW, was/is SLIME an acronym for Symbolics LIsp Machine Environment?]
Any particular hints or comments folks would like to make before I start?
I don't want to discourage you, but do you think this is worth to have? When I looked at this feature I thought "well, this has a certain hack value, but compiling the entire buffer doesn't take that long and is easier to understand and trivial to implement."
After reading this, I do have to say that I agree.
Helmut.