Alessio Stalla writes:
I assume you mean (funcall (quote j:compareTo) ...), and if we had that, also simply (j:compareTo ...)
For that to work, we should alter the semantics of the language quite dramatically, and I'm not even sure the result would be CL anymore. E.g.
(let ((fn (symbol-function 'j:someMethod))) ...much later... (funcall fn some-obj))
should be possible, but in that case the unbound function (or method not found) error can only be signaled at the time of the funcall, since the existence of the method can only be determined given the argument types. I don't think such dramatic changes would buy us anything good.
Why can't it signal an unbound function error?
The existence of methods is checked at call time for generic functions as well. If it does not exist, an no-applicable-method error is signalled.
-T.