Hello, i attempted to load Alien-Core package into trunk image, and it failed.
One of the problem is override of recreateSpecialObjectsArray method.. I wonder, maybe we should design a nicer API for extending/reserving slots in special objects array, so it won't require overriding this method by every package which needs to extend special objects, like FFI or Alien. Another aspect of replacing this method is , that it makes problematic to unload such package, in case one wants to unload it. So, my proposal is to add a simple API to SmalltalkImage class, and in order to install additional special objects one should do like: MyClass class>>initialize Smalltalk registerSpecialObject: myObject at: 55. Smalltalk registerSpecialObject: myObject at: 56. ... or: Smalltalk registerSpecialObjects: #( x y z) startingAt: 56. upon package unload, a reverse scheme should be supported: MyClass class>>unload Smalltalk unregisterSpecialObjectAt: 55. Smalltalk unregisterSpecialObjectAt: 56. ... or: Smalltalk unregisterSpecialObjects: 3 startingAt: 56. what you think? -- Best regards, Igor Stasenko AKA sig. _______________________________________________ Pharo-project mailing list [email protected] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
