Thoughts on a concurrent Squeak VM

Bert Freudenberg bert at freudenbergs.de
Wed Oct 31 17:16:41 UTC 2007


On Oct 31, 2007, at 17:57 , Rob Withers wrote:

> ----- Original Message ----- From: "Andreas Raab"  
> <andreas.raab at gmx.de>
> To: "The general-purpose Squeak developers list" <squeak- 
> dev at lists.squeakfoundation.org>
> Sent: Wednesday, October 31, 2007 9:37 AM
> Subject: Re: Thoughts on a concurrent Squeak VM
>
>
>> Rob Withers wrote:
>>> What about using C++?  There would be some degradation of  
>>> performance. However, there would be the benefit of structuring  
>>> the VM classes, of not having to add VM as an argument  
>>> everywhere, and it may even be possible to subclass Thread so we  
>>> know where the thread-local storage is.
>>
>> For the VM internally, I don't really care. Since this is  
>> generated code there is really no difference to me. For plugins it  
>> is not feasible to use C++ since name mangling not standardized so  
>> you can't link reliably to C++ APIs.
>
> That's true that it's internal to the VM so it shouldn't matter.  I  
> suppose the benefi of structuring the classes was more of an in  
> image issue with me. Even using C, we could separate off the  
> primitives into a Primitives class and compile with ObjectMemory,  
> Interpreter, and Primitives so they are all generated in the same  
> file.  Then we would just need to make sure the  
> InterpreterSimulator knew about the Primitives class.  The same  
> issue as would apply if ObjectMemory and Interpreter were no longer  
> part of the same hierarchy.
>
> It makes sense that primitives would have a problem with name  
> mangling, so named primitives can't be in C++ classes...indexed  
> could be, though, as long as the primitive table were initialized  
> with the mangled names.

I don't see any point in switching to C++.

- Bert -





More information about the Squeak-dev mailing list