Generic method dispatch is *supposed* to be fast. It was fast once upon a time. We should fix that.
On Fri, Apr 30, 2021 at 2:19 PM Stefan Israelsson Tampe < stefan.ita...@gmail.com> wrote: > If performance is important, a goops solution can be slow in vector-ref > and vector-set! operations due > to two reasons. (I have pounder an implementation of resizable python > lists and here is my tips), > > 1. slot-ref/slot-set! is slow (I try to fix this using the much more > difficult struct-ref/struct-set!) > 2. generic-method-dispatch is slow, I try to make a wrapper function in > which we short cut for > python/sheme internal types and if they do not match use the > generic method. > > > On Fri, Apr 30, 2021 at 1:57 PM Mikael Djurfeldt <mik...@djurfeldt.com> > wrote: > >> On Fri, Apr 30, 2021 at 1:11 AM Damien Mattei <damien.mat...@gmail.com> >> wrote: >> >> > for example in the doc there is: >> > (define-class <my-complex> (<number>) r i #:name "Complex") >> > >> > seems <number> superclass is of no use >> > >> >> Well, it certainly *is* of use in the sense that methods operating on >> <number> will immediately start to also accept <my-complex> as an >> argument. >> That might seem worrisome but is not if there is some agreement on which >> operations should be implemented for all numbers. So, if you had >> previously >> written an algorithm which operates on numbers, there's now a good chance >> that it would also work for <my-complex> objects. >> >