[squeak-dev] Re: [Vm-dev] New Window VM (Closures, FT2Plugin, Large Cursors)

Keith Hodges keith_hodges at yahoo.co.uk
Tue Mar 10 00:21:36 UTC 2009


Eliot Miranda wrote:
>
>
> On Mon, Mar 9, 2009 at 3:58 PM, Keith Hodges <keith_hodges at yahoo.co.uk
> <mailto:keith_hodges at yahoo.co.uk>> wrote:
>
>     Keith Hodges wrote:
>     > Keith Hodges wrote:
>     >
>     >>> I will at some point push out a 3.8.22 VM that should put up a
>     more
>     >>> helpful dialog message, but people who have older VMs underfoot
>     >>> should realize this behaviour should be an indication that perhaps
>     >>> your VM is too old.
>     >>>
>     >>>
>     >> Unfortunately the machine that I have designated for Bob to be
>     an auto
>     >> build/test server is a power-pc machine. What are the chances of a
>     >> power-pc version of the closures vm?
>     >>
>     >> just interested to know
>     >>
>     >> Keith
>     >>
>     > Ok I see it is designated beta1U for universal, so the problem lies
>     > elsewhere!
>     >
>     > Keith
>     >
>     OK so assigining to closure temporaries is no-longer allowed and
>     flags a
>     syntax error (not my code you understand)
>
>
> There is a preference that allows one to compile old code that does
> assign to block arguments.  Its called allowBlockArgumentAssignment.
>  Of course one can assign to closure temporaries.  e.g.
>
>     self do: [:i| | j | j := i + 1. ...
>
> But assigning to a block argument is dubious.
>  
Working in 3.10.2-Closures image.

I dutifully rewrote the offending code (Installer-Formats-kph.4.mcz) and
bootstrapped it using a bog standard fileIn from the snapshot/source.st
file. However the first thing that happens is that MczInstaller
recompiles (invoked from #newSubclassOf: newSuper type: type
instanceVariables: instVars from: oldClass) not sure why since the class
instVar layout hasnt changed at all.

In this case I am probably better off removing the old class before I
load the new one, however, this indicates the nature of potential
problems to come.

Keith

 




More information about the Squeak-dev mailing list