<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On Apr 2, 2013, at 21:14, Erik Huelsmann <<a href="mailto:ehuels@gmail.com">ehuels@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div dir="ltr"><div class="gmail_extra">Hi Rudi,<br><br><div class="gmail_quote">On Tue, Apr 2, 2013 at 8:08 PM, Rudolf Schlatte <span dir="ltr"><<a href="mailto:rudi@constantly.at" target="_blank">rudi@constantly.at</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word">What makes me suspicious is the output of<div>    (describe (make-instance 'funcallable-standard-object))</div>
<div>vs</div><div>    (describe (make-instance 'standard-generic-function))</div><div>.</div><div><br></div><div>There's a layout called layoutFuncallableStandardClass, defined in StandardClass.java, which has NAME as first slot, but that's for class objects with metaclass funcallable-standard-class, not for instances of these classes.  I'll think a bit in the next days and try to either resolve my doubts or come up with another fix for the problem.  Maybe I'm simply confused; wouldn't be the first time.  :)</div>
</div></blockquote><div><br></div><div style="">Well, to some extent I can see your problem. Indeed there seem to be no slots in the 'MOP:FUNCALLABLE-STANDARD-OBJECT class. The layoutFuncallableStandardClass is what confused me, but that's indeed the layout of the metaclass.</div>
<div style=""><br></div><div style="">So, you're correct that the fix works by accident. The solution should be to add a slot by the name 'MOP::NAME to the FUNCALLABLE-STANDARD-OBJECT. That slot can contain the name of the object (ie function) for which the item is defined. In that case, we should probably remove the direct slot MOP::NAME on the standard generic function, since it's already defined on the superclass if we decide to do that.</div>
</div></div></div></blockquote><br></div><div>That's one solution, yes.  I don't exactly know how / if slot inheritance works for objects created Java-side (which we do for FuncallableStandardObject and StandardGenericFunction), so it needs some experimentation.  Luckily what we have now "works" and is not in any released version, so I can take some time to investigate in peace.  Usually some piece of refactoring falls out which makes the overall code clearer and/or shorter.</div><div><br></div><div>Rudi</div><div><br></div></body></html>