method definition syntax in defsystem forbids primary methods

Bug #485393 reported by Robert P. Goldman
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
ASDF
Fix Released
Wishlist
Faré

Bug Description

You can define some methods on components inline, but these can only be done if you supply a method qualifier. That means that we can't use inline definition for primary methods. It would be a nice enhancement to extend defsystem parsing to make the method qualifier optional.

I haven't thought hard about how difficult it would be to correctly handle this. Possibly we could just allow the use of :primary as a bogus method qualifier.

Changed in asdf:
status: New → Confirmed
importance: Undecided → Wishlist
Revision history for this message
Faré (fahree) wrote :

I move we kill this "inline-method" syntax.
It cannot make defsystem more declarative in any meaningful way, and just makes my life harder.

Now to identify everyone who uses it...

Revision history for this message
Robert P. Goldman (rpgoldman) wrote : Re: [Bug 485393] Re: method definition syntax in defsystem forbids primary methods

On 1/19/13 Jan 19 -2:38 PM, Faré wrote:
> I move we kill this "inline-method" syntax.
> It cannot make defsystem more declarative in any meaningful way, and just makes my life harder.
>
> Now to identify everyone who uses it...
>

I would really rather not do that, unless it makes your life
*significantly* harder. Isn't it trivial to parse it in the DEFSYSTEM
macro?

I'm just concerned because I know of a bunch of places it is used
internally to SIFT, and not in Quicklisp (so won't be found by your tests).

I think it does serve a real need, since it's much more terse than the
EQL method dispatch alternative.

Revision history for this message
Faré (fahree) wrote :

Had too much time on my hands, so I fixed that in 2.28.4.

I'm not convinced that this inline-method thingie is a good idea, but if it's going to be there, it might as well be done well. Feature still done in backward-internals.lisp.

Changed in asdf:
assignee: nobody → Faré (fahree)
milestone: none → version3
status: Confirmed → Fix Committed
Revision history for this message
Faré (fahree) wrote :

Released in 2.29.

Changed in asdf:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.