[slime-devel] new feature in CLISP-cvs

Helmut Eller heller at common-lisp.net
Wed Aug 10 07:13:15 UTC 2005


* Onay [2005-08-09 20:19+0200] writes:

> forwarding [Sam Steingold] from CLISP-general mailing list:
>
>>CLISP SLIME users might want to grab CLISP cvs head and nag SLIME
>>developers to use it too:
>>(documentation 'symbol 'sys::file)
>>now returns a list of (file start-line end-line).
>>file = file where the symbol was defined
>>start-line and end-line are the locations in the file.
>>note that when file is "foo.fas",
>>line numbers should still point to "file.lisp"!
>
>>if the slime users & developers are happy with this, this functionality
>>will be exported (i.e., EXT:FILE instead or SYS::FILE).
>
>>comments are welcome.
>
> maybe this feature could help navigating through source files?
> and maybe e.g. for debugging purposes?

Sure that should be useful for M-.

If you want to work on this: our fspec-pathname already looks at the
sys::file property. I guess it needs some modifications for CVS CLISP.
fspec-location should also make a location with a :line value (like
compiler-note-location does).

[A problem with "foo.fas" is that the fasl file and the source file
are not necessarily in the same directory or may have completely
unrelated filenames.]

Also look at frame-source-location-for-emacs.  If you find a way to
get the function name for the frame, then you could look up the source
file.  Doesn't work for lambdas or methods, but it would be better
than nothing.

I have no CLISP here, so I will not look at this issue.

Helmut.



More information about the slime-devel mailing list