Fwd: [V3dot9] Fwd: FFI
Andreas Raab
andreas.raab at gmx.de
Thu Aug 10 17:26:41 UTC 2006
That just raises my previous question again: What do I have to do to get
the FFI out of the image?
To remind you: Removing the FFI was part of my "FFI maintenance deal".
Back in 10/05 I both asked for it to be removed and filed a bug report
[1]. In 01/06 I asked *again* for it to be removed [2], to no avail.
Then I asked *again* in 07/06 and nothing happened [3]. Then I asked
*again* in 08/06 [4]. Each time the base line response was "yes, we'll
do it in 3.9" - except that now it's "too late, that's life". I don't
find that self-explanatory.
If I spend time and effort to try to get things done in an "orderly" way
I think I can at least expect a response and an explanation of what
exactly the steps in the process are and where exactly this process went
wrong.
Would somebody *please* bother telling me which steps exactly I need to
follow to get this done?
[1]http://bugs.impara.de/view.php?id=2123
[2]http://lists.squeakfoundation.org/pipermail/squeak-dev/2006-January/099871.html
[3]http://lists.squeakfoundation.org/pipermail/squeak-dev/2006-July/106389.html
[4]http://lists.squeakfoundation.org/pipermail/squeak-dev/2006-August/106709.html
Stéphane Ducasse wrote:
> why FFI will be in 3.9.
> I think that the email is self-explanatory.
>
> Stef
> PS: lukas has some good idea how to make FFI and other compiler
> extensions modular, but we should have interest in that.
>
> Begin forwarded message:
>
>> From: Marcus Denker <denker at iam.unibe.ch>
>> Date: 10 août 2006 12:54:58 HAEC
>> To: "3.9 Squeak" <v3dot9 at lists.squeakfoundation.org>
>> Subject: [V3dot9] Fwd: FFI
>>
>>
>>
>> Begin forwarded message:
>>
>>> From: Marcus Denker <denker at iam.unibe.ch>
>>> Date: 10. August 2006 12:46:11 GMT+02:00
>>> To: Stephane Ducasse <ducasse at iam.unibe.ch>
>>> Subject: FFI
>>>
>>> Hi,
>>>
>>> I am allways saying that we should not just do everything in the last
>>> second.
>>> I am very much for having this as a strict rule, covering FFI, too.
>>> There was
>>> time to do it, and we didn't. That's life, there is a version after
>>> 3.9 to do it.
>>>
>>> Unloading FFI is not as simple as people think it is:
>>> There is a method "discardFFI", this contains the knowledge to unload
>>> it:
>>>
>>> self
>>> at: #ExternalStructure
>>> ifPresent: [:cls | (ChangeSet superclassOrder: cls
>>> withAllSubclasses asArray)
>>> reverseDo: [:c | c removeFromSystem]].
>>> SystemOrganization removeCategoriesMatching: 'FFI-*'.
>>> self recreateSpecialObjectsArray.
>>>
>>> We have hidden references to FFI left over in
>>>
>>> -> SpecialObjectArray
>>> -> Compiler
>>> -> the unload method itself.
>>>
>>> all of them are hacked to use the "Smalltalk at: #ExternalStructure"
>>> hack to not
>>> leave references the system knows about, but of course, it leaved
>>> references
>>> nevertheless of the kind that is un-tracable, not documented, and
>>> easily overlooked.
>>>
>>> What happens when we load FFI? Does is call the specialObject
>>> registration?
>>> If we then clean up the image further, do we just delete the
>>> discardFFI method
>>> and loose the ability to unload FFI? Will we "clean" the compiler and
>>> the specialObject
>>> array at some point by accident?
>>>
>>> Where are those dependencies documented?
>>>
>>> I can do it now in the hackish way (leaving the non-tracable bits of
>>> FFI), but I wasted another
>>> hour(!) for this!!!
>>>
>>> I want to stop. I don't care anymore. I want to finish.
>>>
>>> Marcus
>>>
>>
>> _______________________________________________
>> V3dot9 mailing list
>> V3dot9 at lists.squeakfoundation.org
>> http://lists.squeakfoundation.org/mailman/listinfo/v3dot9
>
>
>
More information about the Squeak-dev
mailing list
|