--------
I was mucking about on my development image with my WORKHORSE VM, (IIRC, compiled from CVS source and clean 3.7)
The only noteworthy change to the image was that I had removed most of the bit-manipulation methods from LargePositiveInteger.
--------
29 September 2004 5:13:26 pm
VM: unix - a SmalltalkImage Image: Squeak3.7 [latest update: #5989]
SecurityManager state: Restricted: false FileAccess: true SocketAccess: true Working Dir /home/atg/source/squeak/test Trusted Dir /home/atg/source/squeak/test/secure Untrusted Dir /home/atg/source/squeak/test/untrusted
Array(Object)>>error: Receiver: #('ab') Arguments and temporary variables: aString: 'a primitive has failed' Receiver's instance variables: #('ab')
Array(Object)>>primitiveFailed Receiver: #('ab') Arguments and temporary variables:
Receiver's instance variables: #('ab')
Array>>elementsForwardIdentityTo:copyHash: Receiver: #('ab') Arguments and temporary variables: otherArray: #('cd') copyHash: false Receiver's instance variables: #('ab')
String(Object)>>becomeForward:copyHash: Receiver: 'ab' Arguments and temporary variables: otherObject: 'cd' copyHash: false Receiver's instance variables: 'ab'
--- The full stack --- Array(Object)>>error: Array(Object)>>primitiveFailed Array>>elementsForwardIdentityTo:copyHash: String(Object)>>becomeForward:copyHash: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - BecomeTest>>testBecomeForwardDontCopyIdentityHash BecomeTest(TestCase)>>performTest [] in BecomeTest(TestCase)>>runCase {[self setUp. self performTest]} BlockContext>>ensure: BlockContext>>sunitEnsure: BecomeTest(TestCase)>>runCase [] in BecomeTest(TestCase)>>debug {[(self class selector: testSelector) runCase]} BlockContext>>ensure: BlockContext>>sunitEnsure: BecomeTest(TestCase)>>debug TestRunner>>debugErrorTest: PluggableListMorph>>changeModelSelection: PluggableListMorph>>mouseUp: PluggableListMorph(Morph)>>handleMouseUp: MouseButtonEvent>>sentTo: PluggableListMorph(Morph)>>handleEvent: PluggableListMorph(Morph)>>handleFocusEvent: [] in HandMorph>>sendFocusEvent:to:clear: {[ActiveHand := self. ActiveEvent := anEvent. result := focusHolder han...]} [] in PasteUpMorph>>becomeActiveDuring: {[aBlock value]} BlockContext>>on:do: PasteUpMorph>>becomeActiveDuring: HandMorph>>sendFocusEvent:to:clear: HandMorph>>sendEvent:focus:clear: HandMorph>>sendMouseEvent: HandMorph>>handleEvent: HandMorph>>processEvents [] in WorldState>>doOneCycleNowFor: {[:h | ActiveHand := h. h processEvents. capturingGesture := capturingGest...]} Array(SequenceableCollection)>>do: WorldState>>handsDo: WorldState>>doOneCycleNowFor: WorldState>>doOneCycleFor: PasteUpMorph>>doOneCycle [] in Project class>>spawnNewProcess {[[World doOneCycle. Processor yield. false] whileFalse. nil]} [] in BlockContext>>newProcess {[self value. Processor terminateActive]}
Alan,
after a very short look into ..
alangrimes@starpower.net wrote:
I was mucking about on my development image with my WORKHORSE VM, (IIRC, compiled from CVS source and clean 3.7)
The only noteworthy change to the image was that I had removed most of
the bit-manipulation methods from LargePositiveInteger.
, just a thought: Have you removed >>hashMultiply there? This could be dangerous, since it will be used by some >>hash methods...
Greetings Stephan
29 September 2004 5:13:26 pm
VM: unix - a SmalltalkImage Image: Squeak3.7 [latest update: #5989]
SecurityManager state: Restricted: false FileAccess: true SocketAccess: true Working Dir /home/atg/source/squeak/test Trusted Dir /home/atg/source/squeak/test/secure Untrusted Dir /home/atg/source/squeak/test/untrusted
Array(Object)>>error: Receiver: #('ab') Arguments and temporary variables: aString: 'a primitive has failed' Receiver's instance variables: #('ab')
Array(Object)>>primitiveFailed Receiver: #('ab') Arguments and temporary variables:
Receiver's instance variables: #('ab')
Array>>elementsForwardIdentityTo:copyHash: Receiver: #('ab') Arguments and temporary variables: otherArray: #('cd') copyHash: false Receiver's instance variables: #('ab')
String(Object)>>becomeForward:copyHash: Receiver: 'ab' Arguments and temporary variables: otherObject: 'cd' copyHash: false Receiver's instance variables: 'ab'
--- The full stack --- Array(Object)>>error: Array(Object)>>primitiveFailed Array>>elementsForwardIdentityTo:copyHash: String(Object)>>becomeForward:copyHash:
BecomeTest>>testBecomeForwardDontCopyIdentityHash BecomeTest(TestCase)>>performTest [] in BecomeTest(TestCase)>>runCase {[self setUp. self performTest]} BlockContext>>ensure: BlockContext>>sunitEnsure: BecomeTest(TestCase)>>runCase [] in BecomeTest(TestCase)>>debug {[(self class selector: testSelector) runCase]} BlockContext>>ensure: BlockContext>>sunitEnsure: BecomeTest(TestCase)>>debug TestRunner>>debugErrorTest: PluggableListMorph>>changeModelSelection: PluggableListMorph>>mouseUp: PluggableListMorph(Morph)>>handleMouseUp: MouseButtonEvent>>sentTo: PluggableListMorph(Morph)>>handleEvent: PluggableListMorph(Morph)>>handleFocusEvent: [] in HandMorph>>sendFocusEvent:to:clear: {[ActiveHand := self. ActiveEvent := anEvent. result := focusHolder han...]} [] in PasteUpMorph>>becomeActiveDuring: {[aBlock value]} BlockContext>>on:do: PasteUpMorph>>becomeActiveDuring: HandMorph>>sendFocusEvent:to:clear: HandMorph>>sendEvent:focus:clear: HandMorph>>sendMouseEvent: HandMorph>>handleEvent: HandMorph>>processEvents [] in WorldState>>doOneCycleNowFor: {[:h | ActiveHand := h. h processEvents. capturingGesture := capturingGest...]} Array(SequenceableCollection)>>do: WorldState>>handsDo: WorldState>>doOneCycleNowFor: WorldState>>doOneCycleFor: PasteUpMorph>>doOneCycle [] in Project class>>spawnNewProcess {[[World doOneCycle. Processor yield. false] whileFalse. nil]} [] in BlockContext>>newProcess {[self value. Processor terminateActive]}
Alan, after a very short look into .. alangrimes@starpower.net wrote:
I was mucking about on my development image with my WORKHORSE VM, (IIRC, compiled from CVS source and clean 3.7)
The only noteworthy change to the image was that I had removed most of
the bit-manipulation methods from LargePositiveInteger.
, just a thought: Have you removed >>hashMultiply there? This could be dangerous, since it will be used by some >>hash methods...
Nope....
Basically I plan to make the core VM have only two basic data types, the byte array and the short int.. Everything else is compound... Accelerator plugins such as the LargeIntegerPlugin should be first in line to take the large integer calls...
Anyway.
squeak-dev@lists.squeakfoundation.org