[Vm-dev] Sounds baaad sounds

Andreas Raab andreas.raab at gmx.de
Tue Feb 1 08:28:27 UTC 2011

On 1/31/2011 9:08 PM, Igor Stasenko wrote:
> On 31 January 2011 19:21, Andreas Raab<andreas.raab at gmx.de>  wrote:
>> Huh? Are you saying that Pharo contains different primitives than Squeak? If
>> not, I somewhat fail to see the problem.
> I don't feel ok knowing that VM depends on right combination of
> classes in Sound package,
> since there is no clear separation between plugin and language side
> implementation.

I'm not entirely sure what you're saying here. What's used from the 
sound package is generated primitives; it's not that there is explicit 
plugin code anywhere. The same holds for the Graphics and some other 
packages. And, FWIW, you do not *need* the sound package to generate the 
VM; you do without it if you're willing to forego the generated 
primitives (and if there is some dependency in VMMaker that does indeed 
*require* the sound package, then we should remove the dependency).

> Pharo could diverge to the point that it could not load a Squeak's
> Sound package anymore.

Well, let's be a bit realistic. The scenario you are describing sounds 
excruciatingly unlikely because if Pharo can no longer load Smalltalk 
code I think it will have much bigger problems than the sound plugin.

> So, it won't be able to load VMMaker or even if it do, then generated
> VM code will be different depending on image you using.
> What i want to achieve is to make VMMaker be image agnostic, so it
> could be loaded cleanly
> into any image and produce same code as it was years ago using different image.

That's a nice goal but already untrue. For example, later versions of 
VMMaker cannot be loaded into pre-3.9 images. So the goal that VMMaker 
can be loaded into "any" image is already untrue and really not 
necessary. I'd say your time would be better spent on improving the test 
suite for the VM so that we can ensure that VMs we care about have the 
right properties.

   - Andreas

More information about the Vm-dev mailing list