[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