[ANN] Kernel Image - independent MinimalMorphic and better granularity

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

[ANN] Kernel Image - independent MinimalMorphic and better granularity

Pavel Krivanek
Hi all,

I have prepared the new version of the KernelImage. The most important
new is the independence of the MinimalMorphic package. That means that
MinimalMorphic package has no overrides now and we are be able to
modify and publish Kernel and basic primitive packages directly from
the MinimalMorphic image!

I have to say that some of the secessary refactorings are very ugly
now but the main goal was to make the MinimalMorphic independent soon
and enable to develop the kernel refactorings in more comfortable way.

The test and some other small packages were removed from the EToys
package. The next step should be improvement and splitting of tests.
The complete image has 20 failures and 3 errors now. The EToys package
has still many overrides.

All packages should include 3.10 patches up to 7091.

ImagePack 20070428 - download:
http://comtalk.net/public/pub/KernelImage/ImagePack20070428.zip

Includes:
- KernelImage (basic kernel without network and the other primitive packages)
- KernelImageMC (basic kernel with network and Monticello)
- MinimalMorphic  image
- EToys image

Cheers,
-- Pavel

Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Kernel Image - independent MinimalMorphic and better granularity

Ralph Johnson
I tried all four images on my Mac, with varying results.  The VMs that
I tried were 3.8.14Beta3U and 3.8.15Beta1U, and I got the same results
with both of them.

I started up KernelImage and KernelImageMC and they both started up
and gave me a promt.  I did not test them further.  I tried
MinimalMorphic, and the image started up but never displayed anything.
 I couldn't do anything to make it display.  I tried EToys and if I
make sure that the SqueakV39.sources file is *missing* then it starts
up with an error message that it can't find SqueakV39.sources, but
then runs the image *without* refreshing the window.  I can open
browser, etc and then move them around to get the entire window
painted, but until I do that, it is just black.  However, if I leave
the SqueakV39.sources file in the directory, it behaves like the
MinimalMorphic image, i.e. it never displays any window at all.

Has anybody else with a Mac had better luck?  Which VM did you use?

-Ralph

Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Kernel Image - independent MinimalMorphic and better granularity

Pavel Krivanek
Hi Ralph,

even on the Linux VM some problems with display refreshing are present
but aren't so deadly as in case of Mac VM. I'll try to look at it. Has
someone any advice?

-- Pavel

On 4/28/07, Ralph Johnson <[hidden email]> wrote:

> I tried all four images on my Mac, with varying results.  The VMs that
> I tried were 3.8.14Beta3U and 3.8.15Beta1U, and I got the same results
> with both of them.
>
> I started up KernelImage and KernelImageMC and they both started up
> and gave me a promt.  I did not test them further.  I tried
> MinimalMorphic, and the image started up but never displayed anything.
>  I couldn't do anything to make it display.  I tried EToys and if I
> make sure that the SqueakV39.sources file is *missing* then it starts
> up with an error message that it can't find SqueakV39.sources, but
> then runs the image *without* refreshing the window.  I can open
> browser, etc and then move them around to get the entire window
> painted, but until I do that, it is just black.  However, if I leave
> the SqueakV39.sources file in the directory, it behaves like the
> MinimalMorphic image, i.e. it never displays any window at all.
>
> Has anybody else with a Mac had better luck?  Which VM did you use?
>
> -Ralph
>
>

Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Kernel Image - independent MinimalMorphic and better granularity

Pavel Krivanek
Plase try this MinimalMorphic image:
http://comtalk.net/public/pub/KernelImage/MinimalMorphic.20070429.zip

Cheers,
-- Pavel

On 4/29/07, Pavel Krivanek <[hidden email]> wrote:

> Hi Ralph,
>
> even on the Linux VM some problems with display refreshing are present
> but aren't so deadly as in case of Mac VM. I'll try to look at it. Has
> someone any advice?
>
> -- Pavel
>
> On 4/28/07, Ralph Johnson <[hidden email]> wrote:
> > I tried all four images on my Mac, with varying results.  The VMs that
> > I tried were 3.8.14Beta3U and 3.8.15Beta1U, and I got the same results
> > with both of them.
> >
> > I started up KernelImage and KernelImageMC and they both started up
> > and gave me a promt.  I did not test them further.  I tried
> > MinimalMorphic, and the image started up but never displayed anything.
> >  I couldn't do anything to make it display.  I tried EToys and if I
> > make sure that the SqueakV39.sources file is *missing* then it starts
> > up with an error message that it can't find SqueakV39.sources, but
> > then runs the image *without* refreshing the window.  I can open
> > browser, etc and then move them around to get the entire window
> > painted, but until I do that, it is just black.  However, if I leave
> > the SqueakV39.sources file in the directory, it behaves like the
> > MinimalMorphic image, i.e. it never displays any window at all.
> >
> > Has anybody else with a Mac had better luck?  Which VM did you use?
> >
> > -Ralph
> >
> >
>

Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Kernel Image - independent MinimalMorphic and better granularity

Klaus D. Witzel
It works on win32 (browser, file list, transcript, workspace) with the  
3.9.2 VM.

Except the scroolbars which are on the wrong side ;-)

Thank you Pavel.

/Klaus

On Sun, 29 Apr 2007 09:53:42 +0200, Pavel Krivanek wrote:

> Plase try this MinimalMorphic image:
> http://comtalk.net/public/pub/KernelImage/MinimalMorphic.20070429.zip
>
> Cheers,
> -- Pavel
>
> On 4/29/07, Pavel Krivanek <[hidden email]> wrote:
>> Hi Ralph,
>>
>> even on the Linux VM some problems with display refreshing are present
>> but aren't so deadly as in case of Mac VM. I'll try to look at it. Has
>> someone any advice?
>>
>> -- Pavel
>>
>> On 4/28/07, Ralph Johnson <[hidden email]> wrote:
>> > I tried all four images on my Mac, with varying results.  The VMs that
>> > I tried were 3.8.14Beta3U and 3.8.15Beta1U, and I got the same results
>> > with both of them.
>> >
>> > I started up KernelImage and KernelImageMC and they both started up
>> > and gave me a promt.  I did not test them further.  I tried
>> > MinimalMorphic, and the image started up but never displayed anything.
>> >  I couldn't do anything to make it display.  I tried EToys and if I
>> > make sure that the SqueakV39.sources file is *missing* then it starts
>> > up with an error message that it can't find SqueakV39.sources, but
>> > then runs the image *without* refreshing the window.  I can open
>> > browser, etc and then move them around to get the entire window
>> > painted, but until I do that, it is just black.  However, if I leave
>> > the SqueakV39.sources file in the directory, it behaves like the
>> > MinimalMorphic image, i.e. it never displays any window at all.
>> >
>> > Has anybody else with a Mac had better luck?  Which VM did you use?
>> >
>> > -Ralph
>> >
>> >
>>
>
>



Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Kernel Image - independent MinimalMorphic and better granularity

stephane ducasse
In reply to this post by Pavel Krivanek

On 28 avr. 07, at 15:17, Pavel Krivanek wrote:

> Hi all,
>
> I have prepared the new version of the KernelImage. The most important
> new is the independence of the MinimalMorphic package. That means that
> MinimalMorphic package has no overrides now and we are be able to
> modify and publish Kernel and basic primitive packages directly from
> the MinimalMorphic image!
>
> I have to say that some of the secessary refactorings are very ugly
> now but the main goal was to make the MinimalMorphic independent soon
> and enable to develop the kernel refactorings in more comfortable way.


Can you give some example of these ugly refactorings??


> The test and some other small packages were removed from the EToys
> package. The next step should be improvement and splitting of tests.
> The complete image has 20 failures and 3 errors now. The EToys package
> has still many overrides.
>
> All packages should include 3.10 patches up to 7091.
>
> ImagePack 20070428 - download:
> http://comtalk.net/public/pub/KernelImage/ImagePack20070428.zip
>
> Includes:
> - KernelImage (basic kernel without network and the other primitive  
> packages)
> - KernelImageMC (basic kernel with network and Monticello)
> - MinimalMorphic  image
> - EToys image
>
> Cheers,
> -- Pavel
>
>


Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Kernel Image - independent MinimalMorphic and better granularity

Pavel Krivanek
>
> On 28 avr. 07, at 15:17, Pavel Krivanek wrote:
>
> > Hi all,
> >
> > I have prepared the new version of the KernelImage. The most important
> > new is the independence of the MinimalMorphic package. That means that
> > MinimalMorphic package has no overrides now and we are be able to
> > modify and publish Kernel and basic primitive packages directly from
> > the MinimalMorphic image!
> >
> > I have to say that some of the secessary refactorings are very ugly
> > now but the main goal was to make the MinimalMorphic independent soon
> > and enable to develop the kernel refactorings in more comfortable way.
>
>
> Can you give some example of these ugly refactorings??

In some cases I created more general class that contains "kernel"
implementation. The Morphic then simply adds its override (now in the
class hierarchy meaning) to the original class. Such example is the
BasicChangeSet class.

Then I created methods like specificOperation1: in the Object
interface. When the Kernel calls it, it does nothing. Morphic adds its
implementation of this general method. It's about in 24 cases.

I hope that we will be able to replace it with better and more general
refactorings soon.

Cheers,
-- Pavel

Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Kernel Image - independent MinimalMorphic and better granularity

Steven Elkins
In reply to this post by Pavel Krivanek
On 4/29/07, Pavel Krivanek <[hidden email]> wrote:

> Plase try this MinimalMorphic image:
> http://comtalk.net/public/pub/KernelImage/MinimalMorphic.20070429.zip

Works somewhat with on my PPC iBook with one of Ian's VMs (3.9-7 #6).
Browsing, file listing, world menu's do submenu, etc. all worked.  But
switching to the previous project resulted in an unresponsive image.
Tried it directly and by choosing it from the 'jump to project...',
logs attached.

Thanks for working on this.

Steve



PrevProjSqueakDebug.log (5K) Download Attachment
JumpProjSqueakDebug.log (5K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Kernel Image - independent MinimalMorphic and better granularity

Pavel Krivanek
Hi Steven,

thank you, it's the known issue. During Morphic initialization we
create one temporary parent project. We have to delete it.

Cheers,
-- Pavel

On 4/29/07, Steven Elkins <[hidden email]> wrote:

> On 4/29/07, Pavel Krivanek <[hidden email]> wrote:
>
> > Plase try this MinimalMorphic image:
> > http://comtalk.net/public/pub/KernelImage/MinimalMorphic.20070429.zip
>
> Works somewhat with on my PPC iBook with one of Ian's VMs (3.9-7 #6).
> Browsing, file listing, world menu's do submenu, etc. all worked.  But
> switching to the previous project resulted in an unresponsive image.
> Tried it directly and by choosing it from the 'jump to project...',
> logs attached.
>
> Thanks for working on this.
>
> Steve
>
>
>
>
>

Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Kernel Image - independent MinimalMorphic and better granularity

johnmci
In reply to this post by Pavel Krivanek
As earlier noted the mac carbon vm won't open a window until  
something schedules a
                (127 primitiveShowDisplayRect)

also if  defer display updates was set
                (126 primitiveDeferDisplayUpdates)

then the window would't be opened because we've asked to defer screen  
updates.

If no one gets around to doing the proper  prim call you won't get a  
window. Also since the call is of the form
displayBitsOf: aForm Left: l Top: t Right: r Bottom: b
likely you've noted you'll get a dialog box on a black screen because  
something has just asked to
draw the dialog box, however nothing yet has asked to draw the entire  
screen.

A possible fix would be doing a fullDisplayUpdate early on in the  
image startup process, the downside is
that on slow machine you'll get a window up that you cannot interact  
with until perhaps many seconds have passed.

In 3.8.17bx I altered this so that if you are using Ffenestri you can  
configure the VM not to open a
window until  you make the Ffenestri call to create a window.

On Apr 28, 2007, at 11:32 PM, Pavel Krivanek wrote:

> Hi Ralph,
>
> even on the Linux VM some problems with display refreshing are present
> but aren't so deadly as in case of Mac VM. I'll try to look at it. Has
> someone any advice?
>
> -- Pavel
--
========================================================================
===
John M. McIntosh <[hidden email]>
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
========================================================================
===



Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Kernel Image - independent MinimalMorphic and better granularity

stephane ducasse
In reply to this post by Pavel Krivanek
By the way do you know if you changes have been harvested in 3.10?

Stef

On 29 avr. 07, at 16:21, Pavel Krivanek wrote:

>>
>> On 28 avr. 07, at 15:17, Pavel Krivanek wrote:
>>
>> > Hi all,
>> >
>> > I have prepared the new version of the KernelImage. The most  
>> important
>> > new is the independence of the MinimalMorphic package. That  
>> means that
>> > MinimalMorphic package has no overrides now and we are be able to
>> > modify and publish Kernel and basic primitive packages directly  
>> from
>> > the MinimalMorphic image!
>> >
>> > I have to say that some of the secessary refactorings are very ugly
>> > now but the main goal was to make the MinimalMorphic independent  
>> soon
>> > and enable to develop the kernel refactorings in more  
>> comfortable way.
>>
>>
>> Can you give some example of these ugly refactorings??
>
> In some cases I created more general class that contains "kernel"
> implementation. The Morphic then simply adds its override (now in the
> class hierarchy meaning) to the original class. Such example is the
> BasicChangeSet class.
>
> Then I created methods like specificOperation1: in the Object
> interface. When the Kernel calls it, it does nothing. Morphic adds its
> implementation of this general method. It's about in 24 cases.
>
> I hope that we will be able to replace it with better and more general
> refactorings soon.
>
> Cheers,
> -- Pavel
>
>


Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Kernel Image - independent MinimalMorphic and better granularity

Pavel Krivanek
They weren't
-- Pavel

On 5/1/07, stephane ducasse <[hidden email]> wrote:

> By the way do you know if you changes have been harvested in 3.10?
>
> Stef
>
> On 29 avr. 07, at 16:21, Pavel Krivanek wrote:
>
> >>
> >> On 28 avr. 07, at 15:17, Pavel Krivanek wrote:
> >>
> >> > Hi all,
> >> >
> >> > I have prepared the new version of the KernelImage. The most
> >> important
> >> > new is the independence of the MinimalMorphic package. That
> >> means that
> >> > MinimalMorphic package has no overrides now and we are be able to
> >> > modify and publish Kernel and basic primitive packages directly
> >> from
> >> > the MinimalMorphic image!
> >> >
> >> > I have to say that some of the secessary refactorings are very ugly
> >> > now but the main goal was to make the MinimalMorphic independent
> >> soon
> >> > and enable to develop the kernel refactorings in more
> >> comfortable way.
> >>
> >>
> >> Can you give some example of these ugly refactorings??
> >
> > In some cases I created more general class that contains "kernel"
> > implementation. The Morphic then simply adds its override (now in the
> > class hierarchy meaning) to the original class. Such example is the
> > BasicChangeSet class.
> >
> > Then I created methods like specificOperation1: in the Object
> > interface. When the Kernel calls it, it does nothing. Morphic adds its
> > implementation of this general method. It's about in 24 cases.
> >
> > I hope that we will be able to replace it with better and more general
> > refactorings soon.
> >
> > Cheers,
> > -- Pavel
> >
> >
>
>
>

Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Kernel Image - independent MinimalMorphic and better granularity

Noury Bouraqadi
In reply to this post by Pavel Krivanek
Hi Pavel,

Very good job!

I mainly used MinimalMorphic and the following micro-report is about  
it. I didn't any benchmarks (did you?) but it seems really fast which  
is great. But, the image file size difference compared to  
KernelImageMC is just too much (MinimalImage 2 times larger!). Do you  
plan to shrink minimal morphic further ?

Three bugs in MinimalImage:

-Exceptions don't understand defaultAction while this message is sent  
(at least) in UndefinedObject>>handleSignal:

-When entering or leaving a Morphic, I got an exception in  
LanguageEnvironment>>isFontAvailabe because TextStyle defaultFont  
don't understand fontArray.

-I tried to enter into an MVC project but failed. Squeak draws the  
MVC, but then I get an error in Project>>isTopProject and a restore  
display shows the root project. The parentProject IV of the MVC  
project is set to nil instead of refering to a Project.

BTW, the size difference between KernelImageMC and
Noury
Le 29 avr. 07 à 09:53, Pavel Krivanek a écrit :

> Plase try this MinimalMorphic image:
> http://comtalk.net/public/pub/KernelImage/MinimalMorphic.20070429.zip
>
> Cheers,
> -- Pavel
>
> On 4/29/07, Pavel Krivanek <[hidden email]> wrote:
>> Hi Ralph,
>>
>> even on the Linux VM some problems with display refreshing are  
>> present
>> but aren't so deadly as in case of Mac VM. I'll try to look at it.  
>> Has
>> someone any advice?
>>
>> -- Pavel
>>
>> On 4/28/07, Ralph Johnson <[hidden email]> wrote:
>> > I tried all four images on my Mac, with varying results.  The  
>> VMs that
>> > I tried were 3.8.14Beta3U and 3.8.15Beta1U, and I got the same  
>> results
>> > with both of them.
>> >
>> > I started up KernelImage and KernelImageMC and they both started up
>> > and gave me a promt.  I did not test them further.  I tried
>> > MinimalMorphic, and the image started up but never displayed  
>> anything.
>> >  I couldn't do anything to make it display.  I tried EToys and if I
>> > make sure that the SqueakV39.sources file is *missing* then it  
>> starts
>> > up with an error message that it can't find SqueakV39.sources, but
>> > then runs the image *without* refreshing the window.  I can open
>> > browser, etc and then move them around to get the entire window
>> > painted, but until I do that, it is just black.  However, if I  
>> leave
>> > the SqueakV39.sources file in the directory, it behaves like the
>> > MinimalMorphic image, i.e. it never displays any window at all.
>> >
>> > Has anybody else with a Mac had better luck?  Which VM did you use?
>> >
>> > -Ralph
>> >
>> >
>>
>

Noury
------------------------------------------------------------------
Dr. Noury Bouraqadi - Enseignant/Chercheur
Responsable de l'option I.S.I.C.
ARMINES - Ecole des Mines de Douai - Dept. I.A.
http://csl.ensm-douai.fr/noury

European Smalltalk Users Group Board
http://www.esug.org
------------------------------------------------------------------




Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Kernel Image - independent MinimalMorphic and better granularity

Ralph Johnson
Pavel, if there are changes you'd like made to 3.10 to make your life
easier, or if you think that some of the changes you have made are
ready to be put into 3.10, please let us know.

I think that KernelImage is the future of Squeak.  it isn't ready yet
to become the standard image, but it is getting close.  Perhaps it
should be the basis of 3.11.

-Ralph

Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Kernel Image - independent MinimalMorphic and better granularity

Edgar J. De Cleene



El 5/2/07 8:22 AM, "Ralph Johnson" <[hidden email]> escribió:

> Pavel, if there are changes you'd like made to 3.10 to make your life
> easier, or if you think that some of the changes you have made are
> ready to be put into 3.10, please let us know.
>
> I think that KernelImage is the future of Squeak.  it isn't ready yet
> to become the standard image, but it is getting close.  Perhaps it
> should be the basis of 3.11.
>
> -Ralph

I always wish go Kernel close or MinimalMorphic close.
Also  wish Pavel be part of the release team.
So I do less and learn more :=)

Edgar



Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Kernel Image - independent MinimalMorphic and better granularity

Pavel Krivanek
In reply to this post by Ralph Johnson
Hi Ralph,

On 5/2/07, Ralph Johnson <[hidden email]> wrote:
> Pavel, if there are changes you'd like made to 3.10 to make your life
> easier, or if you think that some of the changes you have made are
> ready to be put into 3.10, please let us know.

I have published some changes on Mantis but I will try to check them
again and start to push them systematically to make 3.10 closer to my
images. In fact, it will not make my life easier ;-) but at least  the
changes will be seen by more eyes.

> I think that KernelImage is the future of Squeak.  it isn't ready yet
> to become the standard image, but it is getting close.  Perhaps it
> should be the basis of 3.11.

I can sign it ;-)

-- Pavel

Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Kernel Image - independent MinimalMorphic and better granularity

stephane ducasse
In reply to this post by Pavel Krivanek
Do you know why?
I thought that they would be the first candidates for 3.10
Ralph?

Stef



On 2 mai 07, at 09:11, Pavel Krivanek wrote:

> They weren't
> -- Pavel
>
> On 5/1/07, stephane ducasse <[hidden email]> wrote:
>> By the way do you know if you changes have been harvested in 3.10?
>>
>> Stef
>>
>> On 29 avr. 07, at 16:21, Pavel Krivanek wrote:
>>
>> >>
>> >> On 28 avr. 07, at 15:17, Pavel Krivanek wrote:
>> >>
>> >> > Hi all,
>> >> >
>> >> > I have prepared the new version of the KernelImage. The most
>> >> important
>> >> > new is the independence of the MinimalMorphic package. That
>> >> means that
>> >> > MinimalMorphic package has no overrides now and we are be  
>> able to
>> >> > modify and publish Kernel and basic primitive packages directly
>> >> from
>> >> > the MinimalMorphic image!
>> >> >
>> >> > I have to say that some of the secessary refactorings are  
>> very ugly
>> >> > now but the main goal was to make the MinimalMorphic independent
>> >> soon
>> >> > and enable to develop the kernel refactorings in more
>> >> comfortable way.
>> >>
>> >>
>> >> Can you give some example of these ugly refactorings??
>> >
>> > In some cases I created more general class that contains "kernel"
>> > implementation. The Morphic then simply adds its override (now  
>> in the
>> > class hierarchy meaning) to the original class. Such example is the
>> > BasicChangeSet class.
>> >
>> > Then I created methods like specificOperation1: in the Object
>> > interface. When the Kernel calls it, it does nothing. Morphic  
>> adds its
>> > implementation of this general method. It's about in 24 cases.
>> >
>> > I hope that we will be able to replace it with better and more  
>> general
>> > refactorings soon.
>> >
>> > Cheers,
>> > -- Pavel
>> >
>> >
>>
>>
>>
>
>