Traits status (was: Re: Strange behavior)

Adrian Lienhard adi at netstyle.ch
Sun Oct 23 13:17:13 UTC 2005


1) The current work needed to bring traits to 3.9 is integrating the  
relevant changes that were done in 3.8 and until now in 3.9. The  
initial implementation was done in 3.7, thus, what we now have to do  
(and Daniel and I partly already did that) is integrating changes.  
This is not that trivial because for example methods were moved into  
traits in the new kernel to avoid code duplication. However, to be  
able to use MC's diffing, we did some tricks (flattening classes)  
that help us in the process. What then remains is  the methods that  
should actually be removed (e.g., because they were deprecated),  
added (e.g., new behavior of the new kernel) and conflicting changes.  
This is the next task that has to be done based on a fixed Kernel  
version of 3.9a (this has to be fixed because else we just end up  
redoing it again). This should also answer the question about waiting  
for traits with further harvesting: it should be enough for us to  
have the Kernel package frozen until our stuff gets in because this  
is where most of the changes are. So, harvesting in other packages is  
ok.


2) The next part of the story is doing the bootstrapping, that is,  
having a set of versions that can be loaded in a specific order into  
a current 3.9a image.

3) When having finished with these two steps we should finally be  
able to load the new traits-aware kernel, and start doing remaining  
cleanups (e.g., moving class extensions into correct packages),  
adjustments (making the code browser and other UI stuff work with  
traits) and testing/bugfixing.

4) The other parts are the UI (Daniel worked on a new OB browser),  
traits-aware MC and fileIn/Out (already exists but a review would be  
good) etc.

I'm not sure if it really makes sense for step 1) and 2) to have help  
because the coordination overhead is quite big. Currently Daniel does  
not have time to help here, so I will do it in the next weeks.

But for 3) and 4), when we actually have something that can be loaded  
in 3.9, help would very much be appreciated.

Daniel, anything to add what I forgot?

Adrian



On Oct 23, 2005, at 1:00 AM, Andreas Raab wrote:

> Marcus Denker wrote:
>
>> Another problem: I directly sent you a mail that it will take a while
>>
> > to integrate your changes. One of the reasons is that we can't right
> > now update the image, another is that, as I said, we need to
> > carefully look into how these change interact with traits.
>
> Out of curiosity: What is the status of traits? What conflicts  
> exist and need to be addressed? Where can I have a look at the  
> current version to see what potential conflicts there are and how  
> to work them out?
>
> For the records, I have of course tried to load the 3.7 traits  
> version from SqueakMap but to no avail - it takes about an hour  
> before it dies with an "error during install: PureBehavior  
> class>>compiledMethodAt:ifAbsent:". And when I try to open a  
> debugger I get repeated errors of the same sort so it's no good  
> even to try to understand what is going on here.
>
>
>> Why do we now need to rush everything? We managed to do nothing  
>> for 8  Months while waiting for 3.8, so why now suddenly the rush?
>>
>
> How about "because we would all like to avoid such delays in the  
> future"? Is that good enough of a why? ;-)
>
> Cheers,
>   - Andreas
>
>




More information about the Squeak-dev mailing list