Short rant on platforms and sessions

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

Short rant on platforms and sessions

Schwab,Wilhelm K
I've been unable to follow the whole list lately, but I caught some mention of what might be a more toward platform-dependence, or lack of independence.

I *like* being able to work on Linux and deploy to Windows.  Hopefully we won't lose that.  I agree that things should happen in the image far more than in the vm - easier to see and fix.  The Smalltalk debugger is great, so we should use it at every opportunity; putting things in the image is enabling.

Dolphin shows us the correct path: session awareness.  The image "wakes up"  and decides where it is running - the vm can certainly help in Pharo's case.  External resources are *not* cleared on image save - the image might keep running, so why release and reallocate?  Finalization is best-effort.  External resources are cleared just before exiting, but *after* any associated image save.  When the image wakes, one of its first duties is to clear (not release via calls) any external resources, because they are known to be garbage at this point.

It works, and works well.

Bill



Reply | Threaded
Open this post in threaded view
|

Re: Short rant on platforms and sessions

Chris Muller-3
> Dolphin shows us the correct path: session awareness.  The image "wakes up"
> and decides where it is running - the vm can certainly help in Pharo's
> case.  External resources are *not* cleared on image save - the image might
> keep running, so why release and reallocate?  Finalization is best-effort.
> External resources are cleared just before exiting, but *after* any
> associated image save.  When the image wakes, one of its first duties is to
> clear (not release via calls) any external resources, because they are known
> to be garbage at this point.
>
> It works, and works well.

I don't have experience with Dolphin, but that does sound like a
clever solution to avoiding the release/reallocate burden on image
save (and not exiting)..

Reply | Threaded
Open this post in threaded view
|

Re: Short rant on platforms and sessions

Schwab,Wilhelm K
It's a nice system - we should take lessons from it where we can.  In this case, they *clearly* have it right.  




________________________________________
From: [hidden email] [[hidden email]] on behalf of Chris Muller [[hidden email]]
Sent: Thursday, May 10, 2012 8:56 PM
To: [hidden email]
Subject: Re: [Pharo-project] Short rant on platforms and sessions

> Dolphin shows us the correct path: session awareness.  The image "wakes up"
> and decides where it is running - the vm can certainly help in Pharo's
> case.  External resources are *not* cleared on image save - the image might
> keep running, so why release and reallocate?  Finalization is best-effort.
> External resources are cleared just before exiting, but *after* any
> associated image save.  When the image wakes, one of its first duties is to
> clear (not release via calls) any external resources, because they are known
> to be garbage at this point.
>
> It works, and works well.

I don't have experience with Dolphin, but that does sound like a
clever solution to avoiding the release/reallocate burden on image
save (and not exiting)..


Reply | Threaded
Open this post in threaded view
|

Re: Short rant on platforms and sessions

Igor Stasenko
I agree with all your points.
I just can add, that if you start using NativeBoost FFI you'll find
that it follows _exactly_ the rules which you listed.
i dont know much about dolphin, but session awareness is one of the
first things which i implemented in NB, because as to me, it is the
right way how things should be done.


On 11 May 2012 04:08, Schwab,Wilhelm K <[hidden email]> wrote:

> It's a nice system - we should take lessons from it where we can.  In this case, they *clearly* have it right.
>
>
>
>
> ________________________________________
> From: [hidden email] [[hidden email]] on behalf of Chris Muller [[hidden email]]
> Sent: Thursday, May 10, 2012 8:56 PM
> To: [hidden email]
> Subject: Re: [Pharo-project] Short rant on platforms and sessions
>
>> Dolphin shows us the correct path: session awareness.  The image "wakes up"
>> and decides where it is running - the vm can certainly help in Pharo's
>> case.  External resources are *not* cleared on image save - the image might
>> keep running, so why release and reallocate?  Finalization is best-effort.
>> External resources are cleared just before exiting, but *after* any
>> associated image save.  When the image wakes, one of its first duties is to
>> clear (not release via calls) any external resources, because they are known
>> to be garbage at this point.
>>
>> It works, and works well.
>
> I don't have experience with Dolphin, but that does sound like a
> clever solution to avoiding the release/reallocate burden on image
> save (and not exiting)..
>
>



--
Best regards,
Igor Stasenko.

Reply | Threaded
Open this post in threaded view
|

Re: Short rant on platforms and sessions

Fernando olivero-2
In reply to this post by Schwab,Wilhelm K
That's why the OpenGL examples work when you re-open a saved image!

Fernando

On Fri, May 11, 2012 at 12:51 PM, Igor Stasenko <[hidden email]> wrote:

> I agree with all your points.
> I just can add, that if you start using NativeBoost FFI you'll find
> that it follows _exactly_ the rules which you listed.
> i dont know much about dolphin, but session awareness is one of the
> first things which i implemented in NB, because as to me, it is the
> right way how things should be done.
>
>
> On 11 May 2012 04:08, Schwab,Wilhelm K <[hidden email]> wrote:
>> It's a nice system - we should take lessons from it where we can.  In this case, they *clearly* have it right.
>>
>>
>>
>>
>> ________________________________________
>> From: [hidden email] [[hidden email]] on behalf of Chris Muller [[hidden email]]
>> Sent: Thursday, May 10, 2012 8:56 PM
>> To: [hidden email]
>> Subject: Re: [Pharo-project] Short rant on platforms and sessions
>>
>>> Dolphin shows us the correct path: session awareness.  The image "wakes up"
>>> and decides where it is running - the vm can certainly help in Pharo's
>>> case.  External resources are *not* cleared on image save - the image might
>>> keep running, so why release and reallocate?  Finalization is best-effort.
>>> External resources are cleared just before exiting, but *after* any
>>> associated image save.  When the image wakes, one of its first duties is to
>>> clear (not release via calls) any external resources, because they are known
>>> to be garbage at this point.
>>>
>>> It works, and works well.
>>
>> I don't have experience with Dolphin, but that does sound like a
>> clever solution to avoiding the release/reallocate burden on image
>> save (and not exiting)..
>>
>>
>
>
>
> --
> Best regards,
> Igor Stasenko.
>

Reply | Threaded
Open this post in threaded view
|

Re: Short rant on platforms and sessions

Stéphane Ducasse
In reply to this post by Chris Muller-3
Thanks for the info. Indeed it is nice.

On May 11, 2012, at 2:56 AM, Chris Muller wrote:

>> Dolphin shows us the correct path: session awareness.  The image "wakes up"
>> and decides where it is running - the vm can certainly help in Pharo's
>> case.  External resources are *not* cleared on image save - the image might
>> keep running, so why release and reallocate?  Finalization is best-effort.
>> External resources are cleared just before exiting, but *after* any
>> associated image save.  When the image wakes, one of its first duties is to
>> clear (not release via calls) any external resources, because they are known
>> to be garbage at this point.
>>
>> It works, and works well.
>
> I don't have experience with Dolphin, but that does sound like a
> clever solution to avoiding the release/reallocate burden on image
> save (and not exiting)..
>