Hello Brent, Please send the code, i'll look at it asap.
I am precisely in a discussion with developers about goops and the way the guile module system interferes with it, since i also believe that there is a serious problem indeed: and not 'just' because there is no way to ask goops 'stuff' to land in a single module, but because if you don't do the right [counter intuitive] thing then export actually exports single class capable accessors and methods instead of the generic. Anyway, please send your code, because there is a way to make it run, it's just a matter of you understanding how and i'll do my best to help you. Cheers, David ;; -- Le Thu, 14 Mar 2013 12:55:11 +0200, Brent Pinkney <b...@4dst.com> a écrit : > Hello, > > I am having serious problems exporting generics from subclasses of > <object> and then using them in other modules. > I have trawled the logs and tried every combination I can thing of. > > I have tried creating a common base class <thing> for all my classes and > defining the methods there, I have tried exporting generics, and I have > even tried every combination of #:duplicates (merge-generics, first, > last. etc.). > > I can sometimes make some progress but eventually I grind to a halt - > often with spurious error messages saying that "format" and "for-each" > are not memoized. > > I am also quite willing to rework my code to fit guile - I just need > some help on how to proceed. > > Basically I would like a class hierarchy. > > Module Class > ------------------------------------- > <object> > (brent thing) <thing> ; optional - let me know > id name name! > (brent foo) <foo> > ; redefines from <thing> > id name name! > "same file" <bar> > ; uses thing.name! > (brent baz) <baz> > ; redefines from <thing> > name name! > > I would then like a common module (brent main) to import (brent thing) > (brent foo) and (brent baz) and then merrily create and use these classes. > > > Please can someone provide me with the recipe that will solve the above > and also scale to a proper large system. > > (I have test code - if required) > > Thanks > > Brent > >