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
|