[Win32][ANN][TEST][VM] Yet another Win32 VM (3.4.2)

PhiHo Hoang phiho.hoang at rogers.com
Sun Mar 9 21:51:25 UTC 2003


Hi Andreas,

    Thanks for the tests. 

    It's about time to have tests for the Squeak VM internals,
    primitives, and plugins (like the test suite for RePlugin)

> You might be wondering why you see yet another VM 
> so briefly after the one I just posted. 

    No, I am not ;-)

> The answer is that only after I built 3.4.1 I realized that I
> completely forgot about both, the RePlugin and the FontPlugin 
> (both a must have in my understanding). 

    I thought you wanted to demonstrate the state of the art in
    VM making. How easy it is to create a VM with VMMaker ;-)

> It got me thinking about how to handle this and considering 
> my own lazyness 

    Talking of laziness, mine is huge. That's why I broke the 
    legacy megaVM into smaller plugins so that others can help to
    take care of them independently.

    Hey, I am not getting any paycheck out of MobVM,
    why should I not let others help me with it
    (doesn't that make sense  ;-)

> I figured I need something that reminds me of missing plugins 

    How could you miss them when they are stucked in ;-)

> or wrong configurations or similar. 

    You will never get a wrong configuration if you abolish
    that artificial (and troublesome) notion of 'external plugin'
    and 'internal plugin'.

    A plugin is a plugin is a plugin. 
    (it may be hard to see, but there is a period above ;-)

> So I've posted a package for "Win32 Standard VM Configuration tests" 

    Isn't it a bit too much to call a Squeak VM with
    'statically and early linked' plugins to be 'the' "standard" ?

    Come'on, let's try some dog food ;-)

    (Of course I see no problems for such a VM for C++ 
    proclaiming itself as 'the' "standard" ;-)

> to SqueakMap which serves two purposes:

> #1: Remind me to get everything right when building a new VM

    This is cool. 

    I wish you will be able to 'get everything right', soon.
    (I know you are quite capable of it ;-)

> #2: Make it possible for you to check if your configuration 
> conforms to the "standard".

    ECMA, ANSI, ISO or STUCKIN ;-)

> The new 3.4.2 VM is the first "conforming" VM by these measures. 
> As of 3.4.2 the above standard configuration tests are a MUST HAVE 
> for you. 

    REALLY ? You must be JOKING ;-)

> If you ever encounter any weird problems (BitBlt failures, MPEGPlugin 
> problems, etc) you should run the configuration tests. 

    I encountered a problem when I run the newly released (and by newly
    I mean 3.4.2  ;-) with Croquet0.01.image (TeaSqueak 3.2 latest
    update #374).

    I got 'Error: a primitive has failed' on MacHFSPlusFileDirectory.

    Hey, what a heck, I am running Windows, not Mac ;-)

    Anyway, I just dismmised the debugger to continue. 
    My Squeak window is now black, I mean literally black.
    But, I am smart (? ;-), so I did a 'restore display'.

    Voila, here is my good old Croquet screen with the Teapot.
    It was my tea time, so, I dragged out the Teapot, then got:

        'Error: attempt to index non-existent element in an order'

    on the OrderedCollection.

    I guess my tea time is now spoiled. 
    Just wondering what was the problem. 

    Is that newly released 3.4.2 VM conforming to 'the'  "standard" ?

    I thought I should try to filein and run these 
    "Win32 Legacy megaVM Standard Configuration tests"

    What the heck, who stole all the files on my HD ?

    The Filelist just can't find any of them. 
    Dang it, all my HD are now virginised. ;-)

> If you ever encounter any weird problems (BitBlt failures, MPEGPlugin 
> problems, etc) you should run the configuration tests. 

    Yes, I did encounter these very weird problems just described
    above and I cannot even run your test suite.

    It is very much appreciated if you can upload a Croquet image with
    those "Win32 Legacy megaVM Standard  Configuration tests"
    preloaded. 

    I guess, eventually, Croquet image will have these tests preloaded to 
    ensure the ThreeC: comformity, compatibility, compliancy. ;-)

> They are designed to catch any of the likely problems due to confusions 
> between "external" and "internal" plugins.

    That's what called foresight ;-)

    OTOH, if there is no such thing as "external plugin" and
    "internal plugin", if there are just plugins, then there should be
    no confusion.

    The time spent to design the tests to catch these problems
    could have been used to deal with the faceless head of the
    headless ghost.  

    I really hate to see that ghost when I work with SqueakScript.
    What a pity.

> If any of these tests fail it essentially means that you are running a
> "non-conforming" configuration. 

    What do you call it when one cannot even filein the test ?
    "non-filein" ?

> This may not necessarily cause 
> any problems yet it is an indication that there _could_ be problem 
> due to mismatches in plugins (which means you should run your code 
> with a "conforming" configuration first to see if that fixes the problem). 

    You are right, I know that there are mis-matches.

> The tests will identify this for any of the plugins being part of the 
> standard release.

    How can it be done when these tests cannot be even filed in,
    let alone running ?

    Oh, yes. I know. Can I type something into a workspace to file in
    these tests instead of using the Filelist ?

    Or maybe you would consider to bundle your ConsolePlugin in
    next release. Will that help ?

> The 3.4.2 VM now also contains the RePlugin and the FontPlugin by default.
> If you want to use either the Regex package or the Win32NativeFonts package
> from SqueakMap just install them and off you go. As usual, the VM is up at SF:

    May I suggest that instead of sucking more and more plugins,
    one should try to 'modularise the modules', so to speak. ;-)

> Enjoy,

    Thanks for your posting.
    I did enjoy it a lot.
    It made me so happy that I burst into tears.
    Then I burst out laughing.

    Cheers,

    PhiHo.

    
    P.S: FWIW, I unzipped Squeak 3.4.2 to the same directory
           where I tested MobVM which includes SqM.exe and
           a thousand or so plugins ;-)
 



More information about the Squeak-dev mailing list