[squeak-dev] The Trunk: Tools-eem.1009.mcz

Eliot Miranda eliot.miranda at gmail.com
Wed Oct 28 12:16:21 UTC 2020


Hi Marcel,

> On Oct 28, 2020, at 2:13 AM, Marcel Taeumel <marcel.taeumel at hpi.de> wrote:
> 
> 
> Hi Eliot!
> 
> Nice catch! How is that preserving-inspector-state working out so far for you? You had the idea for that feature. :-)

I like the functionality, but the slow down to stepping in the debugger is painful.  Yesterday I was stepping in code in the Cogit (which has about 100 inst vars) and stepping slowed to about two sends per second.  So it is painfully slow, and on balance I want to get rid of it.  The performance issue is very very important.

> 
> Best,
> Marcel
>> Am 28.10.2020 00:14:02 schrieb commits at source.squeak.org <commits at source.squeak.org>:
>> 
>> Eliot Miranda uploaded a new version of Tools to project The Trunk:
>> http://source.squeak.org/trunk/Tools-eem.1009.mcz
>> 
>> ==================== Summary ====================
>> 
>> Name: Tools-eem.1009
>> Author: eem
>> Time: 27 October 2020, 4:13:50.404335 pm
>> UUID: 68ca4cb6-ce96-47f0-a039-d760321e60cb
>> Ancestors: Tools-tpr.1008
>> 
>> The debugger *must not* retain persistent references to objects, thereby preventing garbage colleciton. This is just asking for Heisenbugs.
>> 
>> =============== Diff against Tools-tpr.1008 ===============
>> 
>> Item was changed:
>> ----- Method: Debugger>>saveContextVariablesInspectorState (in category 'user interface') -----
>> saveContextVariablesInspectorState
>> "For the user's convenience. Save field selection and user-typed content in the context-variables inspector. See #restoreContextVariablesInspectorState."
>> 
>> | stateToSave keyForState |
>> self flag: #duplication.
>> (keyForState := self keyForContextVariablesInspectorState)
>> ifNil: [^ self].
>> contextVariablesInspectorState
>> + ifNil: [contextVariablesInspectorState := WeakIdentityKeyDictionary new].
>> - ifNil: [contextVariablesInspectorState := IdentityDictionary new].
>> stateToSave := {
>> self contextVariablesInspector selectedFieldName.
>> self contextVariablesInspector contentsTyped }.
>> contextVariablesInspectorState
>> at: keyForState
>> put: stateToSave.!
>> 
>> Item was changed:
>> ----- Method: Debugger>>saveReceiverInspectorState (in category 'user interface') -----
>> saveReceiverInspectorState
>> "For the user's convenience. Save field selection and user-typed content in the receiver inspector. See #restoreReceiverInspectorState."
>> 
>> | stateToSave keyForState |
>> self flag: #duplication.
>> (keyForState := self keyForReceiverInspectorState)
>> ifNil: [^ self].
>> receiverInspectorState
>> + ifNil: [receiverInspectorState := WeakIdentityKeyDictionary new].
>> - ifNil: [receiverInspectorState := IdentityDictionary new].
>> stateToSave := {
>> self receiverInspector selectedFieldName.
>> self receiverInspector contentsTyped }.
>> receiverInspectorState
>> at: keyForState
>> put: stateToSave.!
>> 
>> 
> 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20201028/89c4adae/attachment-0001.html>


More information about the Squeak-dev mailing list