Mantis Bugtracker

Viewing Issue Simple Details Jump to Notes ] View Advanced ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0007454 [Squeak] VM feature always 01-16-10 19:03 10-10-10 14:29
Reporter lewis View Status public  
Assigned To lewis
Priority normal Resolution fixed  
Status closed   Product Version
Summary 0007454: Removal of obsolete prim support for closures is a problem for Scratch images
Description Support for some obsolete numbered primitives was removed to make way for closure support. Scratch is based on an older Squeak, and loses some network prims when running on closure-enabled VMs.

It would be good to restore backward compatibility to support Scratch images if possible.
Additional Information Discussion is on squeak-dev and vm-dev (Jan 2010). John Maloney provides this explanation:

> From: John Maloney <>
> Date: 16. Januar 2010 16:21:59 MEZ
> To: Bert Freudenberg <>
> Cc: Ian Piumarta <>
> Subject: Re: [Vm-dev] Re: [squeak-dev] Numbered primitives in images
> Hi, Bert.
> Thanks for the alert.
> Yep, this would be a problem for Scratch. It would prevent sharing projects on the website. Normally, I would not mind sticking with an older VM, but that there is also a
+change in the sound support on Linux from ALSA to Pulse Audio that we need, and work on that is still ongoing. So we may need to use a current VM, at least on Linux.
> Any chance there are some other numbered primitives that could be co-opted for the closure prims? As I recall there were lots of unused numbered primitives.
> -- John
Attached Files

- Relationships

- Notes
(0013487 - 797 - 833 - 833 - 833 - 833 - 833)
01-18-10 14:48

John Maloney wrote in a follow-up:

Elliot's idea -- just fix the Scratch image to use the named socket prims -- sounds like a winner. It's simple, it doesn't add any complexity to the VM's, and it doesn't break anything. And it puts the burden on Scratch, where it belongs.

Assuming the named socket primitives do exactly the same things the numbered ones did (and it sounds like they do, since the numbered prims have been re-directed to the named ones for about a decade :-)) then nothing should break, right?

Note that Scratch comes bundled with a copy of the Squeak VM, and the bundled VM in the current release still has support for the numbered socket primitives. So this VM change only matters for future releases of Scratch (and the Linux package, which is in active development).
(0013504 - 1021 - 1375 - 1483 - 1483 - 1483 - 1483)
02-02-10 12:07

Update on related impact to sound recording for Scratch:

From: John M McIntosh <>
Date: Mon, 1 Feb 2010 22:56:25 -0800
To: Squeak Virtual Machine Development Discussion
Subject: [Vm-dev] sound recording in Scratch with new VM

For people keeping track of this, as earlier discussed we grabbed some number primitives originally used by Sockets in the early part
of the last decade for use by the Closure VM, which makes running a Scratch image difficult. Mind it's 5 minutes work to fix in the image.

This evening I discovered that sound recording was changed at some point and the numbered primitives are now marked obsolete.

        /* 190*/ (void *)primitiveObsoleteIndexedPrimitive,
        /* 191*/ (void *)primitiveObsoleteIndexedPrimitive,
        /* 192*/ (void *)primitiveObsoleteIndexedPrimitive,
        /* 193*/ (void *)primitiveObsoleteIndexedPrimitive,
        /* 194*/ (void *)primitiveObsoleteIndexedPrimitive,
(0013887 - 119 - 119 - 119 - 119 - 119 - 119)
10-10-10 14:29

This should be considered a known limitation of the current VMs. Scratch developers are aware and updating accordingly.

- Issue History
Date Modified Username Field Change
01-16-10 19:03 lewis New Issue
01-16-10 19:03 lewis Status new => assigned
01-16-10 19:03 lewis Assigned To  => lewis
01-18-10 14:48 bert Note Added: 0013487
02-02-10 12:07 lewis Note Added: 0013504
10-10-10 14:29 lewis Status assigned => closed
10-10-10 14:29 lewis Note Added: 0013887
10-10-10 14:29 lewis Resolution open => fixed

Mantis 1.0.8[^]
Copyright © 2000 - 2007 Mantis Group
44 total queries executed.
34 unique queries executed.
Powered by Mantis Bugtracker