[Pharo-project] [Vm-dev] Re: we need help for rome
stephane ducasse
stephane.ducasse at gmail.com
Mon Apr 19 12:07:25 UTC 2010
>>>
>>
>> Yes I saw my question was more how do we identify code that is not used anymore?
>> We just do the closure over the published primitives and the rest means that it is useful.
>> My question was how did you identify that only 4 inst were used and not more.
>
> If you look at the RomePlugin class you see that 8 class vars are defined. But in the generated C code, only the first four are declared. That is because the Slang translator only exports the used ones. That's how I know the others are unused - they were not exported :)
Ok this is what I wanted to know :)
>>>>>
> Well, no need to "clean the C code" because it is just generated. Clean the RomePlugin class instead :^)
Excellent.
>>>>
> Many projects are better about backwards compatibility than we are ;)
>
> Generally, once an API was added, it is *never* removed or changed in the same major version of a library. Only additions are allowed in point releases. This ensures code can dynamically link to older binaries and not break with newer releases.
>
> Also, the major version is part of the library name (executables actually link against bla.so.1 not bla.so) so multiple major versions of the same library can co-exist on a system. So major releases can remove or change existing API.
>
> In short, I wouldn't worry about it - I'm not sure in cairo's particular case but in general that's how it works.
Excellent!
> There is something to be said about published vs. public interfaces, and in Smalltalk we usually don't respect either ...
:)
Stef
>
> - Bert -
>
More information about the Vm-dev
mailing list