Mark Guzdial guzdial@cc.gatech.edu wrote (to PWS interest)...
Is anyone else running a Squeak 2.2 image on a 2.3 VM for a PWS? I decided to try it -- I didn't want to try to reconfigure a new image yet, but I wanted to get the speed boost of the 2.3 VM.
It died immediately with a weird subscript error. It took some hunting to find that the curly brace construct that Georg uses that I borrowed (see "{header . query}" at the bottom of PWS>>readRequest:) was choking under the 2.3 VM. I replaced with Array with:with: and it all works well. The weird part is that the same code still exists in the 2.3 VM and STILL WORKS! Weird...
Yes, your same PWS code works in 2.3, but the underlying code where you found the "weird subscript error" is different.
Versions earlier than 2.3 final access to fields above the stack pointer of contexts. This is OK in VMs 2.2 and earlier, but it's a no-no in 2.3 and later.
These, um, archaisms occur in ContextPart>>pop, pop: and push:, and were, um, modernized in CS 460RealStackPtr-di.cs. These methods are only used by the stepping simulator (debugger step command) and by the brace construct. It's likely that filing in just those methods from that changeSet would make a 2.2 image completely happy with the 2.3 interpreter.
- Dan
squeak-dev@lists.squeakfoundation.org