On Dec 22, 2009, at 12:24 AM, Helmut Eller wrote:
- Terje Norderhaug [2009-12-22 01:52+0100] writes:
Assigning a standard meaning would be pretty difficult as implementations differ considerably in this area. E.g Allegro has fspecs while Lispworks has dspecs. Fspecs are for functions only but dspecs are indented for all kinds of definitions and new dspecs can be added by users. It's much simpler to treat dspecs as strings and just display them as label.
MCLIDE needs to be able to filter definitions based on their type, as well as present the dspec in custom ways.
Why is that needed?
It is needed for functionality that improves the usability of MCLIDE.
For example, the Apropos dialog (see screen shot at http://mclide.in- progress.com/tour) lets lisp developers filter the result of an apropos based on type. If the developer chooses to only be interested in the definitions of functions, clicking the Source button goes straight to the function definition even if there are other definitions for the same symbol. Several dialogs also present dspecs from Swank in more uniform custom ways rather than display the implementation dependent raw dspec string.
Adding a definition-types function to swank will aid MCLIDE and other clients make sense of the definitions from swank by providing a type hierarchy or map from canonical definition types to the type symbols used in their lisp implementation specific dspecs. Are there any other solutions we should consider?
-- Terje Norderhaug terje@in-progress.com