[squeak-dev] Image conversions (was Re: Squeak Trunk V3 Update Stream)

Eliot Miranda eliot.miranda at gmail.com
Thu Feb 15 15:05:26 UTC 2018


Hi David, Hi Casey,

> On Feb 15, 2018, at 6:05 AM, David T. Lewis <lewis at mail.msen.com> wrote:
> 
>> On Thu, Feb 15, 2018 at 09:33:59AM +0100, Tobias Pape wrote:
>> 
>>> On 15.02.2018, at 07:46, Marcel Taeumel <marcel.taeumel at hpi.de> wrote:
>>> 
>>> For the long term, I would love to have an "Export as..." in the world menu of a regular (trunk) image. :-)
>> 
>> Or even better: have the vm detect whether it loads an image matching its bit-ness (is this a word?)
>> and if not, convert it (maybe with a "please wait" info). I mean, it works for RSqueak and IIRC SqueakJS???
>> 
>> -t
> 
> These are great ideas!
> 
> Does anybody know any smart grad students looking for a challenging project?


My dream conversion would be taking the Smalltalk-80 image I have from the original Xerox tape and replacing its compiler and other relevant methods so that it used closures and Spur, and a conventional file/directory interface, but otherwise remained the simple bitblt based system with some 2000 methods and 200 classes.

Such a system is great for learning because it is small enough for one person to learn all of it.  Of course it would be a bit bigger; the closure compiler is more complicated, but not by much.  But projects like replacing repainting windows by windows with a backing store, are afternoon projects in this context. 

> ;-)
> 
> Dave

_,,,^..^,,,_ (phone)

>>> Best,
>>> Marcel
>>>> Am 15.02.2018 03:13:39 schrieb David T. Lewis <lewis at mail.msen.com>:
>>>> 
>>>> On Wed, Feb 14, 2018 at 07:57:15AM +0100, Marcel Taeumel wrote: 
>>>>> Thank you, Dave, for supporting the V3 format! 
>>>> 
>>>> It is a long way from perfect, but with some patience and manual 
>>>> intervention, the image updates can be done all the way from Squeak 4.6 
>>>> to the current level of trunk. 
>>>> 
>>>> Attached is a screen shot to show the result. 
>>>> 
>>>>> 
>>>>> We should also put more effort into a better SystemTracer to be able to convert between image formats (including 64/32 bits) back and forth -- even if there are some limitations. Think about converting between JPG and PNG, which is sometimes quite convenient to have. :-) 
>>>>> 
>>>> 
>>>> 
>>>> Yes this would be nice to have. Using a VMMaker image to do tracing is 
>>>> a perfectly reasonable approach, especially now that we have fast machines 
>>>> and unlimite memory. But it would also be nice to have a lighter-weight 
>>>> tool, and possibly one that could handle a wider range of conversion 
>>>> targets. If it were possible to trace back and forth between 32-bit spur 
>>>> and 64-bit spur, that would be particularly useful. 
>>>> 
>>>> I have not really looked at it, but I suspect that Eliot's recent work 
>>>> to handle legacy V3 image segments may be useful here. 
>>>> 
>>>> Dave 
>>>> 
>>>> 
>>>> 
>>>>> Best, 
>>>>> Marcel 
>>>>> Am 14.02.2018 05:36:51 schrieb David T. Lewis : 
>>>>> This project provides an update stream that, starting with a Squeak 4.6 release 
>>>>> image, produces an up-to-date trunk level image that can be run with either a 
>>>>> Cog/Stack or classic interpreter VM. 
>>>>> 
>>>>> The resulting image uses the traditional V3 object memory format, and therefore 
>>>>> does not support Spur enhancements (immediate characters and floats, enhanced 
>>>>> memory management, etc). It does however run most Squeak functionality exactly 
>>>>> like Squeak trunk on Spur. 
>>>>> 
>>>>> I put an update on the swiki here: http://wiki.squeak.org/squeak/6592 
>>>>> 
>>>>> The trunk V3 image may be useful for performance comparisons related to 
>>>>> V3/Spur/Cog/Sista variants. 
>>>>> 
>>>>> Note, this is a long-term update for a project that I did not intend to keep 
>>>>> alive this long. I had originally intended to maintain the V3 update stream 
>>>>> or one Squeak release cycle, but it has turned out to be useful for keeping 
>>>>> the classic interpreter VM updated with respect to VM primitives, and has 
>>>>> been something of a learning experience for me to keep up with the Context 
>>>>> refactorings, Compiler and Kernel changes, and Sista bytecodes. So for better 
>>>>> or worse, the V3 trunk stream is still alive, and I figured that it is worth 
>>>>> a mention on the squeak-dev list :-) 
>>>>> 
>>>>> Dave 
>>>>> 
>>>>> 
>>>> 
>>>>> 
>>>> 
>>>> 
>>> 
>> 
>> 
> 


More information about the Squeak-dev mailing list