tx

http://code.google.com/p/pharo/issues/detail?id=1664

Stef

On Dec 23, 2009, at 7:11 PM, Eliot Miranda wrote:

> This results in an MNU instead of a warning about too many literals because 
> Encoder>>notify: does not report notifications if there is no requestor (if 
> compilation is non-interactive).  A fix would be to integrate with Colin's 
> compiler error changes, e.g. by having Encoder hold onto its parser and defer 
> to Parser>>notify:.  In the interim an adequate fix is
> 
> !Encoder methodsFor: 'error handling' stamp: 'eem 12/22/2009 11:57'!
> notify: string
>       "Put a separate notifier on top of the requestor's window"
>       | req |
>       requestor == nil
>               ifTrue:
>                       [super notify: string]
>               ifFalse: 
>                       [req := requestor.
>                       self release.
>                       req notify: string].
>       ^false! !
> 
> With this fix a notifier opens stating:
> "More than 256 literals referenced. 
>  You must split or otherwise simplify this method.
>  The 257th literal is: 397
> 
>  Select Proceed to continue, or close this window to cancel the operation."
> 
> Find file-in attached.
> 
> 
> 2009/12/21 Bart Gauquie <[email protected]>
> Hi,  
> 
> First load the latest http://www.squeaksource.com/MorphicsRecordNPlay package.
> 
> Then for instance following fails if I evaluate it in a workspace:
> 
> MorphicReplayDemoTest compile: 
> 'testMethod
> self addMMEFrom: 1...@512 to: 1...@504.
> self addMMEFrom: 1...@504 to: 9...@482.
> self addMMEFrom: 9...@482 to: 9...@464.
> self addMMEFrom: 9...@464 to: 8...@462.
> self addMMEFrom: 8...@462 to: 7...@482.
> self addMMEFrom: 7...@482 to: 6...@520.
> self addMMEFrom: 6...@520 to: 6...@559.
> 
> self addMMEFrom: 6...@559 to: 6...@579.
> self addMMEFrom: 6...@579 to: 6...@579.
> self addMMEFrom: 6...@579 to: 6...@564.
> self addMMEFrom: 6...@564 to: 8...@452.
> self addMMEFrom: 8...@452 to: 9...@353.
> self addMMEFrom: 9...@353 to: 1...@287.
> self addMMEFrom: 1...@287 to: 1...@257.
> self addMMEFrom: 1...@257 to: 1...@252.
> self addMMEFrom: 1...@252 to: 1...@259.
> self addMMEFrom: 1...@259 to: 9...@314.
> self addMMEFrom: 9...@314 to: 8...@414.
> self addMMEFrom: 8...@414 to: 8...@502.
> self addMMEFrom: 8...@502 to: 7...@570.
> self addMMEFrom: 7...@570 to: 7...@610.
> self addMMEFrom: 7...@610 to: 8...@630.
> self addMMEFrom: 8...@630 to: 9...@620.
> self addMMEFrom: 9...@620 to: 1...@579.
> self addMMEFrom: 1...@579 to: 1...@549.
> self addMMEFrom: 1...@549 to: 1...@447.
> self addMMEFrom: 1...@447 to: 1...@379.
> self addMMEFrom: 1...@379 to: 1...@377.
> self addMMEFrom: 1...@377 to: 9...@416.
> self addMMEFrom: 9...@416 to: 8...@446.
> self addMMEFrom: 8...@446 to: 7...@530.
> self addMMEFrom: 7...@530 to: 7...@548.
> self addMMEFrom: 7...@548 to: 7...@546.
> self addMMEFrom: 7...@546 to: 8...@515.
> self addMMEFrom: 8...@515 to: 8...@491.
> self addMMEFrom: 8...@491 to: 1...@407.
> self addMMEFrom: 1...@407 to: 1...@361.
> self addMMEFrom: 1...@361 to: 1...@343.
> self addMMEFrom: 1...@343 to: 1...@340.
> self addMMEFrom: 1...@340 to: 1...@349.
> self addMMEFrom: 1...@349 to: 8...@416.
> self addMMEFrom: 8...@416 to: 7...@471.
> self addMMEFrom: 7...@471 to: 7...@511.
> self addMMEFrom: 7...@511 to: 7...@524.
> self addMMEFrom: 7...@524 to: 7...@528.
> self addMMEFrom: 7...@528 to: 8...@509.
> self addMMEFrom: 8...@509 to: 9...@493.
> self addMMEFrom: 9...@493 to: 1...@446.
> self addMMEFrom: 1...@446 to: 1...@427.
> self addMMEFrom: 1...@427 to: 1...@423.
> self addMMEFrom: 1...@423 to: 1...@422.
> self addMMEFrom: 1...@422 to: 1...@424.
> self addMMEFrom: 1...@424 to: 9...@449.
> self addMMEFrom: 9...@449 to: 7...@479.
> self addMMEFrom: 7...@479 to: 6...@503.
> self addMMEFrom: 6...@503 to: 6...@512.
> self addMMEFrom: 6...@512 to: 6...@512.
> self addMMEFrom: 6...@512 to: 6...@508.
> self addMMEFrom: 6...@508 to: 7...@492.
> self addMMEFrom: 7...@492 to: 9...@486.
> self addMMEFrom: 9...@486 to: 1...@494.
> self addMMEFrom: 1...@494 to: 1...@508.
> self addMMEFrom: 1...@508 to: 1...@514.
> self addMMEFrom: 1...@514 to: 1...@514.
> self addMMEFrom: 1...@514 to: 1...@492.
> self addMMEFrom: 1...@492 to: 9...@483.
> self addMMEFrom: 9...@483 to: 8...@498.
> self addMMEFrom: 8...@498 to: 6...@519.
> self addMMEFrom: 6...@519 to: 6...@523.
> self addMMEFrom: 6...@523 to: 6...@502.
> self addMMEFrom: 6...@502 to: 6...@442.
> self addMMEFrom: 6...@442 to: 7...@365.
> self addMMEFrom: 7...@365 to: 9...@316.
> self addMMEFrom: 9...@316 to: 1...@318.
> self addMMEFrom: 1...@318 to: 1...@360.
> self addMMEFrom: 1...@360 to: 1...@403.
> self addMMEFrom: 1...@403 to: 1...@443.
> self addMMEFrom: 1...@443 to: 1...@491.
> self addMMEFrom: 1...@491 to: 8...@536.
> self addMMEFrom: 8...@536 to: 6...@571.
> self addMMEFrom: 6...@571 to: 6...@578.
> self addMMEFrom: 6...@578 to: 5...@545.
> self addMMEFrom: 5...@545 to: 6...@485.
> self addMMEFrom: 6...@485 to: 7...@419.
> self addMMEFrom: 7...@419 to: 8...@383.
> self addMMEFrom: 8...@383 to: 9...@383.
> self addMMEFrom: 9...@383 to: 1...@425.
> self addMMEFrom: 1...@425 to: 1...@443.
> self addMMEFrom: 1...@443 to: 1...@449.
> self addMMEFrom: 1...@449 to: 9...@468.
> self addMMEFrom: 9...@468 to: 8...@509.
> self addMMEFrom: 8...@509 to: 7...@547.
> self addMMEFrom: 7...@547 to: 6...@555.
> self addMMEFrom: 6...@555 to: 6...@531.
> self addMMEFrom: 6...@531 to: 6...@468.
> self addMMEFrom: 6...@468 to: 8...@407.
> self addMMEFrom: 8...@407 to: 9...@380.
> self addMMEFrom: 9...@380 to: 1...@378.
> self addMMEFrom: 1...@378 to: 1...@393.
> self addMMEFrom: 1...@393 to: 1...@393.
> self addMMEFrom: 1...@393 to: 1...@388.
> self addMMEFrom: 1...@388 to: 8...@402.
> self addMMEFrom: 8...@402 to: 7...@433.
> self addMMEFrom: 7...@433 to: 6...@454.
> self addMMEFrom: 6...@454 to: 6...@461.
> self addMMEFrom: 6...@461 to: 6...@469.
> self addMMEFrom: 6...@469 to: 8...@492.
> self addMMEFrom: 8...@492 to: 9...@495.
> self addMMEFrom: 9...@495 to: 1...@476.
> self addMMEFrom: 1...@476 to: 1...@433.
> self addMMEFrom: 1...@433 to: 1...@404.
> self addMMEFrom: 1...@404 to: 1...@307.
> self addMMEFrom: 1...@307 to: 1...@294.
> self addMMEFrom: 1...@294 to: 9...@324.
> self addMMEFrom: 9...@324 to: 9...@357.
> self addMMEFrom: 9...@357 to: 9...@366.
> self addMMEFrom: 9...@366 to: 9...@370.
> self addMMEFrom: 9...@370 to: 9...@379.
> self addMMEFrom: 9...@379 to: 9...@389.
> self addMMEFrom: 9...@389 to: 1...@399.
> self addMMEFrom: 1...@399 to: 1...@408.
> self addMMEFrom: 1...@408 to: 1...@414.
> self addMMEFrom: 1...@414 to: 1...@416.
> self addMMEFrom: 1...@416 to: 1...@418.
> self addMMEFrom: 1...@418 to: 1...@419.
> self addMMEFrom: 1...@419 to: 1...@418.
> self addMMEFrom: 1...@418 to: 1...@414.
> self addMMEFrom: 1...@414 to: 1...@411.
> self addMMEFrom: 1...@411 to: 1...@404.
> self addMMEFrom: 1...@404 to: 1...@404.
> self addMMEFrom: 1...@404 to: 1...@406.
> self addMMEFrom: 1...@406 to: 1...@407.
> self addMMEFrom: 1...@407 to: 1...@408.
> self addMMEFrom: 1...@408 to: 1...@409.
> self addMMEFrom: 1...@409 to: 1...@410.
> self addMMEFrom: 1...@410 to: 1...@411.
> self addMMEFrom: 1...@411 to: 1...@412.
> self addMMEFrom: 1...@412 to: 1...@411.
> self addMMEFrom: 1...@411 to: 1...@409.
> self addMMEFrom: 1...@409 to: 1...@408.
> self addMMEFrom: 1...@408 to: 1...@407.
> self addMMEFrom: 1...@407 to: 1...@408.
> self addMMEFrom: 1...@408 to: 1...@408.
> self addMMEFrom: 1...@408 to: 1...@407.
> MouseButtonEvent new.
> MouseButtonEvent new.
> self addMMEFrom: 1...@401 to: 1...@403.
> self addMMEFrom: 1...@403 to: 1...@408.
> self addMMEFrom: 1...@408 to: 1...@416.
> self addMMEFrom: 1...@416 to: 1...@426.
> self addMMEFrom: 1...@426 to: 1...@443.
> self addMMEFrom: 1...@443 to: 1...@470.
> self addMMEFrom: 1...@470 to: 9...@504.
> self addMMEFrom: 9...@504 to: 9...@546.
> self addMMEFrom: 9...@546 to: 9...@592.
> self addMMEFrom: 9...@592 to: 9...@634.
> self addMMEFrom: 9...@634 to: 1...@665.
> self addMMEFrom: 1...@665 to: 1...@680.
> self addMMEFrom: 1...@680 to: 1...@677.
> self addMMEFrom: 1...@677 to: 1...@658.
> self addMMEFrom: 1...@658 to: 1...@626.
> self addMMEFrom: 1...@626 to: 1...@606.
> self addMMEFrom: 1...@606 to: 1...@543.
> self addMMEFrom: 1...@543 to: 1...@504.
> self addMMEFrom: 1...@504 to: 1...@464.
> self addMMEFrom: 1...@464 to: 1...@425.
> self addMMEFrom: 1...@425 to: 1...@409.
> self addMMEFrom: 1...@409 to: 1...@387.
> self addMMEFrom: 1...@387 to: 1...@397.
> self addMMEFrom: 1...@397 to: 1...@424.
> self addMMEFrom: 1...@424 to: 1...@464.
> self addMMEFrom: 1...@464 to: 9...@513.
> self addMMEFrom: 9...@513 to: 9...@565.
> self addMMEFrom: 9...@565 to: 9...@614.
> self addMMEFrom: 9...@614 to: 9...@656.
> self addMMEFrom: 9...@656 to: 1...@689.
> self addMMEFrom: 1...@689 to: 1...@709.
> self addMMEFrom: 1...@709 to: 1...@714.
> self addMMEFrom: 1...@714 to: 1...@710.
> self addMMEFrom: 1...@710 to: 1...@673.
> self addMMEFrom: 1...@673 to: 1...@635.
> self addMMEFrom: 1...@635 to: 1...@594.
> self addMMEFrom: 1...@594 to: 1...@552.
> self addMMEFrom: 1...@552 to: 1...@530.
> self addMMEFrom: 1...@530 to: 1...@459.
> self addMMEFrom: 1...@459 to: 1...@418.
> self addMMEFrom: 1...@418 to: 1...@389.
> self addMMEFrom: 1...@389 to: 1...@377.
> self addMMEFrom: 1...@377 to: 1...@379.
> self addMMEFrom: 1...@379 to: 1...@397.
> self addMMEFrom: 1...@397 to: 1...@410.
> self addMMEFrom: 1...@410 to: 9...@460.
> self addMMEFrom: 9...@460 to: 9...@499.
> self addMMEFrom: 9...@499 to: 9...@541.
> self addMMEFrom: 9...@541 to: 9...@580.
> self addMMEFrom: 9...@580 to: 9...@597.
> self addMMEFrom: 9...@597 to: 9...@639.
> self addMMEFrom: 9...@639 to: 1...@657.
> self addMMEFrom: 1...@657 to: 1...@666.
> self addMMEFrom: 1...@666 to: 1...@665.
> self addMMEFrom: 1...@665 to: 1...@651.
> self addMMEFrom: 1...@651 to: 1...@625.
> self addMMEFrom: 1...@625 to: 1...@596.
> self addMMEFrom: 1...@596 to: 1...@565.
> self addMMEFrom: 1...@565 to: 1...@528.
> self addMMEFrom: 1...@528 to: 1...@486.
> self addMMEFrom: 1...@486 to: 1...@445.
> self addMMEFrom: 1...@445 to: 1...@412.
> self addMMEFrom: 1...@412 to: 1...@390.
> self addMMEFrom: 1...@390 to: 1...@383.
> self addMMEFrom: 1...@383 to: 1...@394.
> self addMMEFrom: 1...@394 to: 1...@420.
> self addMMEFrom: 1...@420 to: 1...@438.
> self addMMEFrom: 1...@438 to: 9...@506.
> self addMMEFrom: 9...@506 to: 9...@555.
> self addMMEFrom: 9...@555 to: 9...@596.
> self addMMEFrom: 9...@596 to: 1...@629.
> self addMMEFrom: 1...@629 to: 1...@641.
> self addMMEFrom: 1...@641 to: 1...@658.
> self addMMEFrom: 1...@658 to: 1...@655.
> self addMMEFrom: 1...@655 to: 1...@640.
> self addMMEFrom: 1...@640 to: 1...@616.
> self addMMEFrom: 1...@616 to: 1...@589.
> self addMMEFrom: 1...@589 to: 1...@555.
> self addMMEFrom: 1...@555 to: 1...@518.
> self addMMEFrom: 1...@518 to: 1...@474.
> self addMMEFrom: 1...@474 to: 1...@430.
> self addMMEFrom: 1...@430 to: 1...@392.
> self addMMEFrom: 1...@392 to: 1...@370.
> self addMMEFrom: 1...@370 to: 1...@366.
> self addMMEFrom: 1...@366 to: 1...@375.
> self addMMEFrom: 1...@375 to: 1...@397.
> self addMMEFrom: 1...@397 to: 1...@429.
> self addMMEFrom: 1...@429 to: 1...@468.
> self addMMEFrom: 1...@468 to: 1...@489.
> self addMMEFrom: 1...@489 to: 1...@545.
> self addMMEFrom: 1...@545 to: 1...@567.
> self addMMEFrom: 1...@567 to: 1...@590.
> self addMMEFrom: 1...@590 to: 1...@603.
> self addMMEFrom: 1...@603 to: 1...@605.
> self addMMEFrom: 1...@605 to: 1...@593.
> self addMMEFrom: 1...@593 to: 1...@571.
> self addMMEFrom: 1...@571 to: 1...@543.
> self addMMEFrom: 1...@543 to: 1...@509.
> self addMMEFrom: 1...@509 to: 1...@466.
> self addMMEFrom: 1...@466 to: 1...@414.
> self addMMEFrom: 1...@414 to: 1...@390.
> self addMMEFrom: 1...@390 to: 1...@340.
> self addMMEFrom: 1...@340 to: 1...@334.
> self addMMEFrom: 1...@334 to: 1...@346.
> self addMMEFrom: 1...@346 to: 1...@373.
> self addMMEFrom: 1...@373 to: 1...@412.
> self addMMEFrom: 1...@412 to: 1...@457.
> self addMMEFrom: 1...@457 to: 1...@506.
> self addMMEFrom: 1...@506 to: 1...@557.
> self addMMEFrom: 1...@557 to: 1...@581.
> self addMMEFrom: 1...@581 to: 1...@637.
> self addMMEFrom: 1...@637 to: 1...@657.
> self addMMEFrom: 1...@657 to: 1...@660.
> self addMMEFrom: 1...@660 to: 1...@644.
> self addMMEFrom: 1...@644 to: 1...@630.
> self addMMEFrom: 1...@630 to: 1...@569.
> self addMMEFrom: 1...@569 to: 1...@521.
> self addMMEFrom: 1...@521 to: 1...@466.
> self addMMEFrom: 1...@466 to: 1...@410.
> self addMMEFrom: 1...@410 to: 1...@369.
> self addMMEFrom: 1...@369 to: 1...@347.
> self addMMEFrom: 1...@347 to: 1...@342.
> self addMMEFrom: 1...@342 to: 1...@346.
> self addMMEFrom: 1...@346 to: 1...@356.
> self addMMEFrom: 1...@356 to: 1...@363.
> self addMMEFrom: 1...@363 to: 1...@366.
> self addMMEFrom: 1...@366 to: 1...@366.
> self addMMEFrom: 1...@366 to: 1...@372.
> self addMMEFrom: 1...@372 to: 1...@381.
> self addMMEFrom: 1...@381 to: 1...@393.
> self addMMEFrom: 1...@393 to: 1...@399.
> self addMMEFrom: 1...@399 to: 1...@401.
> self addMMEFrom: 1...@401 to: 1...@401.
> self addMMEFrom: 1...@401 to: 1...@400.
> self addMMEFrom: 1...@400 to: 1...@401.
> self addMMEFrom: 1...@401 to: 1...@403.
> self addMMEFrom: 1...@403 to: 1...@404.
> self addMMEFrom: 1...@404 to: 1...@405.
> self addMMEFrom: 1...@405 to: 1...@404.
> MouseButtonEvent new.
> MouseButtonEvent new.
> '
> 
> These are autogenerated contents I want to export as a test case. The strange 
> thing is that, if I manually create the testMethod using the system browser, 
> and paste the content in it; it works fine.
> 
> Kind Regards,
> 
> Bart
> 
> 2009/12/21 Eliot Miranda <[email protected]>
> 
> Hi Bart,
> 
>     I still want to take a look at this specific case because the compiler 
> should produce a proper error message, not an internal error.  So could you 
> please package it up as a reproducible case, or email me the full string that 
> fails?
> 
> TIA
> 
> 
> 2009/12/20 Bart Gauquie <[email protected]>
> Dear all,
> 
> I'm developing code which generates a method content, compiles it and adds it 
> to an existing class. 
> I compile the message using #compile: message:
> for instance:
> 
> MorphicReplayDemoTest compile: '
> testMethod
> self addMMEFrom: 1...@512 to: 1...@504.
> self addMMEFrom: 6...@559 to: 6...@579.
> '.
> 
> This works fine. However if the contents of the method is too long; for 
> instance: 
> if the self addMMEFrom: 1...@512 to: 1...@504. is repeated around 250 times; 
> I get following error (see stack below)
> 
> The strange thing is that if I manually add that method using the editor and 
> paste it, it works just fine. I even tested up to 5000 lines of code; its 
> slow, but its working.
> 
> Any ideas how to solve this?
> 
> Thanks,
> 
> Bart
> 
> I'm using Pharo 1.0 rc update: 10502; using Ubuntu 9.10, using vm 
> pharo-vm-0.15.2f-linux.
> 
> THERE_BE_DRAGONS_HERE
> MessageNotUnderstood: receiver of "<" is nil
> 20 December 2009 8:17:14 pm
> 
> VM: unix - i686 - linux-gnu - Pharo0.1 of 16 May 2008 [latest update: #10074]
> Image: PharoCore1.0rc1 [Latest update: #10502]
> 
> SecurityManager state:
> Restricted: false
> FileAccess: true
> SocketAccess: true
> Working Dir /home/gauquiebart/Smalltalk/Pharo/Images/Pharo 1.0 Playground 
> Image
> Trusted Dir /home/gauquiebart/Smalltalk/Pharo/Images/Pharo 1.0 Playground 
> Image/secure
> Untrusted Dir /home/gauquiebart/Smalltalk/Pharo/Images/Pharo 1.0 Playground 
> Image/My Squeak
> 
> UndefinedObject(Object)>>doesNotUnderstand: #<
> Receiver: nil
> Arguments and temporary variables: 
> aMessage: < 0
> exception: MessageNotUnderstood: receiver of "<" is nil
> resumeValue: nil
> Receiver's instance variables: 
> nil
> 
> EncoderForV3PlusClosures(EncoderForV3)>>genPushLiteral:
> Receiver: {an EncoderForV3PlusClosures}
> Arguments and temporary variables: 
> literalIndex: nil
> Receiver's instance variables: 
> comment: nil
> pc: nil
> scopeTable: a Dictionary('false'->{false} 'nil'->{nil} 
> 'recording'->{recording}...etc...
> nTemps: 0
> supered: false
> requestor: nil
> class: MorphicReplayDemoTest
> selector: #testMethod
> literalStream: a WriteStream {#addMMEFrom:to:. 1054. 512. 1037. 504. 979. 
> 482. ...etc...
> selectorSet: a Dictionary(#*->{*} #+->{+} #-->{-} #/->{/} #'//'->{//} #<->{<} 
> #...etc...
> litIndSet: a 
> Dictionary(#MouseButtonEvent->MouseButtonEvent->{MouseButtonEvent}...etc...
> litSet: a LiteralDictionary(size 402)
> sourceRanges: a Dictionary(size 853)
> globalSourceRanges: an OrderedCollection({'MouseButtonEvent'. (5763 to: 
> 5778). ...etc...
> addedSelectorAndMethodClassLiterals: false
> stream: {an EncoderForV3PlusClosures}
> position: 0
> rootNode: testMethod
> self addMMEFrom: 1054 @ 512 to: 1037 @ 504.
> self addMMEF...etc...
> blockExtentsToLocals: nil
> 
> EncoderForV3PlusClosures(BytecodeEncoder)>>sizeOpcodeSelector:withArguments:
> Receiver: {an EncoderForV3PlusClosures}
> Arguments and temporary variables: 
> genSelector: #genPushLiteral:
> args: #(nil)
> Receiver's instance variables: 
> comment: nil
> pc: nil
> scopeTable: a Dictionary('false'->{false} 'nil'->{nil} 
> 'recording'->{recording}...etc...
> nTemps: 0
> supered: false
> requestor: nil
> class: MorphicReplayDemoTest
> selector: #testMethod
> literalStream: a WriteStream {#addMMEFrom:to:. 1054. 512. 1037. 504. 979. 
> 482. ...etc...
> selectorSet: a Dictionary(#*->{*} #+->{+} #-->{-} #/->{/} #'//'->{//} #<->{<} 
> #...etc...
> litIndSet: a 
> Dictionary(#MouseButtonEvent->MouseButtonEvent->{MouseButtonEvent}...etc...
> litSet: a LiteralDictionary(size 402)
> sourceRanges: a Dictionary(size 853)
> globalSourceRanges: an OrderedCollection({'MouseButtonEvent'. (5763 to: 
> 5778). ...etc...
> addedSelectorAndMethodClassLiterals: false
> stream: {an EncoderForV3PlusClosures}
> position: 0
> rootNode: testMethod
> self addMMEFrom: 1054 @ 512 to: 1037 @ 504.
> self addMMEF...etc...
> blockExtentsToLocals: nil
> 
> EncoderForV3PlusClosures(BytecodeEncoder)>>sizePushLiteral:
> Receiver: {an EncoderForV3PlusClosures}
> Arguments and temporary variables: 
> literalIndex: nil
> Receiver's instance variables: 
> comment: nil
> pc: nil
> scopeTable: a Dictionary('false'->{false} 'nil'->{nil} 
> 'recording'->{recording}...etc...
> nTemps: 0
> supered: false
> requestor: nil
> class: MorphicReplayDemoTest
> selector: #testMethod
> literalStream: a WriteStream {#addMMEFrom:to:. 1054. 512. 1037. 504. 979. 
> 482. ...etc...
> selectorSet: a Dictionary(#*->{*} #+->{+} #-->{-} #/->{/} #'//'->{//} #<->{<} 
> #...etc...
> litIndSet: a 
> Dictionary(#MouseButtonEvent->MouseButtonEvent->{MouseButtonEvent}...etc...
> litSet: a LiteralDictionary(size 402)
> sourceRanges: a Dictionary(size 853)
> globalSourceRanges: an OrderedCollection({'MouseButtonEvent'. (5763 to: 
> 5778). ...etc...
> addedSelectorAndMethodClassLiterals: false
> stream: {an EncoderForV3PlusClosures}
> position: 0
> rootNode: testMethod
> self addMMEFrom: 1054 @ 512 to: 1037 @ 504.
> self addMMEF...etc...
> blockExtentsToLocals: nil
> 
> LiteralNode>>sizeCodeForValue:
> Receiver: {397}
> Arguments and temporary variables: 
> encoder: {an EncoderForV3PlusClosures}
> Receiver's instance variables: 
> comment: nil
> pc: nil
> key: 397
> code: -3
> index: nil
> 
> [] in MessageNode>>sizeCodeForValue:
> Receiver: {1092 @ 397}
> Arguments and temporary variables: 
> <<error during printing>
> Receiver's instance variables: 
> comment: nil
> pc: nil
> receiver: {1092}
> selector: {...@}
> precedence: 2
> special: 0
> arguments: #({397})
> sizes: #(nil)
> equalNode: nil
> caseErrorNode: nil
> 
> Array(SequenceableCollection)>>collect:
> Receiver: #({397})
> Arguments and temporary variables: 
> aBlock: [closure] in MessageNode>>sizeCodeForValue:
> newCollection: #(nil)
> index: 1
> indexLimiT: 1
> Receiver's instance variables: 
> #({397})
> 
> MessageNode>>sizeCodeForValue:
> Receiver: {1092 @ 397}
> Arguments and temporary variables: 
> <<error during printing>
> Receiver's instance variables: 
> comment: nil
> pc: nil
> receiver: {1092}
> selector: {...@}
> precedence: 2
> special: 0
> arguments: #({397})
> sizes: #(nil)
> equalNode: nil
> caseErrorNode: nil
> 
> [] in MessageNode>>sizeCodeForValue:
> Receiver: {self addMMEFrom: 1140 @ 387 to: 1092 @ 397}
> Arguments and temporary variables: 
> <<error during printing>
> Receiver's instance variables: 
> comment: nil
> pc: nil
> receiver: {self}
> selector: {addMMEFrom:to:}
> precedence: 3
> special: 0
> arguments: an OrderedCollection({1140 @ 387} {1092 @ 397})
> sizes: #(nil nil)
> equalNode: nil
> caseErrorNode: nil
> 
> OrderedCollection>>collect:
> Receiver: an OrderedCollection({1140 @ 387} {1092 @ 397})
> Arguments and temporary variables: 
> aBlock: [closure] in MessageNode>>sizeCodeForValue:
> newCollection: an OrderedCollection(7)
> index: 4
> Receiver's instance variables: 
> array: an Array(nil nil {1140 @ 387} {1092 @ 397} nil nil nil nil nil nil)
> firstIndex: 3
> lastIndex: 4
> 
> MessageNode>>sizeCodeForValue:
> Receiver: {self addMMEFrom: 1140 @ 387 to: 1092 @ 397}
> Arguments and temporary variables: 
> <<error during printing>
> Receiver's instance variables: 
> comment: nil
> pc: nil
> receiver: {self}
> selector: {addMMEFrom:to:}
> precedence: 3
> special: 0
> arguments: an OrderedCollection({1140 @ 387} {1092 @ 397})
> sizes: #(nil nil)
> equalNode: nil
> caseErrorNode: nil
> 
> MessageNode(ParseNode)>>sizeCodeForEffect:
> Receiver: {self addMMEFrom: 1140 @ 387 to: 1092 @ 397}
> Arguments and temporary variables: 
> encoder: {an EncoderForV3PlusClosures}
> Receiver's instance variables: 
> comment: nil
> pc: nil
> receiver: {self}
> selector: {addMMEFrom:to:}
> precedence: 3
> special: 0
> arguments: an OrderedCollection({1140 @ 387} {1092 @ 397})
> sizes: #(nil nil)
> equalNode: nil
> caseErrorNode: nil
> 
> MessageNode>>sizeCodeForEffect:
> Receiver: {self addMMEFrom: 1140 @ 387 to: 1092 @ 397}
> Arguments and temporary variables: 
> encoder: {an EncoderForV3PlusClosures}
> Receiver's instance variables: 
> comment: nil
> pc: nil
> receiver: {self}
> selector: {addMMEFrom:to:}
> precedence: 3
> special: 0
> arguments: an OrderedCollection({1140 @ 387} {1092 @ 397})
> sizes: #(nil nil)
> equalNode: nil
> caseErrorNode: nil
> 
> BlockNode>>sizeCodeExceptLast:
> Receiver: {[self addMMEFrom: 1054 @ 512 to: 1037 @ 504.
> self addMMEFrom: 1037 @ 504 to: 979 @ 482.
> ...etc...
> Arguments and temporary variables: 
> encoder: {an EncoderForV3PlusClosures}
> codeSize: 2564
> i: 169
> statement: {self addMMEFrom: 1140 @ 387 to: 1092 @ 397}
> iLimiT: 287
> Receiver's instance variables: 
> comment: nil
> pc: nil
> arguments: #()
> statements: an OrderedCollection({self addMMEFrom: 1054 @ 512 to: 1037 @ 504} 
> {...etc...
> returns: true
> nArgsNode: nil
> size: nil
> remoteCopyNode: nil
> temporaries: an OrderedCollection()
> optimized: false
> actualScopeIfOptimized: nil
> blockExtent: (0 to: 2)
> remoteTempNode: nil
> copiedValues: nil
> closureCreationNode: nil
> startOfLastStatement: 11519
> 
> BlockNode>>sizeCodeForEvaluatedValue:
> Receiver: {[self addMMEFrom: 1054 @ 512 to: 1037 @ 504.
> self addMMEFrom: 1037 @ 504 to: 979 @ 482.
> ...etc...
> Arguments and temporary variables: 
> encoder: {an EncoderForV3PlusClosures}
> Receiver's instance variables: 
> comment: nil
> pc: nil
> arguments: #()
> statements: an OrderedCollection({self addMMEFrom: 1054 @ 512 to: 1037 @ 504} 
> {...etc...
> returns: true
> nArgsNode: nil
> size: nil
> remoteCopyNode: nil
> temporaries: an OrderedCollection()
> optimized: false
> actualScopeIfOptimized: nil
> blockExtent: (0 to: 2)
> remoteTempNode: nil
> copiedValues: nil
> closureCreationNode: nil
> startOfLastStatement: 11519
> 
> BytecodeAgnosticMethodNode>>generate:
> Receiver: testMethod
> self addMMEFrom: 1054 @ 512 to: 1037 @ 504.
> self addMMEFrom: 1037 @ 504 to: 9...etc...
> Arguments and temporary variables: 
> trailer: #(0 0 0 0)
> primErrNode: nil
> blkSize: nil
> nLits: nil
> literals: nil
> stack: nil
> method: nil
> locals: nil
> lit: nil
> Receiver's instance variables: 
> comment: nil
> pc: nil
> selectorOrFalse: #testMethod
> precedence: 1
> arguments: #()
> block: {[self addMMEFrom: 1054 @ 512 to: 1037 @ 504.
> self addMMEFrom: 1037 @ 5...etc...
> primitive: 0
> encoder: {an EncoderForV3PlusClosures}
> temporaries: #()
> properties: an AdditionalMethodState
> sourceText: 'testMethod
> self addMMEFrom: 1...@512 to: 1...@504.
> self addMMEFr...etc...
> locationCounter: 3
> localsPool: an IdentitySet()
> 
> CompiledMethodWithNode class>>generateMethodFromNode:trailer:
> Receiver: CompiledMethodWithNode
> Arguments and temporary variables: 
> aMethodNode: testMethod
> self addMMEFrom: 1054 @ 512 to: 1037 @ 504.
> self addM...etc...
> bytes: #(0 0 0 0)
> Receiver's instance variables: 
> superclass: Object
> methodDict: a MethodDictionary(#method->a CompiledMethod(650: 
> CompiledMethodWit...etc...
> format: 134
> instanceVariables: #('node' 'method')
> organization: ('accessing' method node selector)
> ('private' method: node:)
> 
> subclasses: nil
> name: #CompiledMethodWithNode
> classPool: nil
> sharedPools: nil
> environment: Smalltalk
> category: #'Compiler-Support'
> traitComposition: nil
> localSelectors: nil
> 
> MorphicReplayDemoTest 
> class(Behavior)>>compile:classified:notifying:trailer:ifFail:
> Receiver: MorphicReplayDemoTest
> Arguments and temporary variables: 
> code: 'testMethod
> self addMMEFrom: 1...@512 to: 1...@504.
> self addMMEFrom: 10...etc...
> category: #'as yet unclassified'
> requestor: nil
> bytes: #(0 0 0 0)
> failBlock: [closure] in MorphicReplayDemoTest 
> class(ClassDescription)>>compile:...etc...
> methodNode: testMethod
> self addMMEFrom: 1054 @ 512 to: 1037 @ 504.
> self addMM...etc...
> Receiver's instance variables: 
> superclass: AbstractReplayTestCase
> methodDict: a MethodDictionary(#testMethod->a CompiledMethod(1191: 
> MorphicRepla...etc...
> format: 134
> instanceVariables: nil
> organization: ('tests' testMethod)
> 
> subclasses: nil
> name: #MorphicReplayDemoTest
> classPool: nil
> sharedPools: nil
> environment: Smalltalk
> category: #'MorphicsRecordNPlay-Model'
> traitComposition: nil
> localSelectors: nil
> history: a Dictionary(#errors->a Set() #failures->a Set() #passed->a 
> Set(#testM...etc...
> 
> MorphicReplayDemoTest 
> class(ClassDescription)>>compile:classified:withStamp:notifying:logSource:
> Receiver: MorphicReplayDemoTest
> Arguments and temporary variables: 
> text: 'testMethod
> self addMMEFrom: 1...@512 to: 1...@504.
> self addMMEFrom: 10...etc...
> category: #'as yet unclassified'
> changeStamp: 'BartGauquie 12/20/2009 20:17'
> requestor: nil
> logSource: true
> methodAndNode: nil
> Receiver's instance variables: 
> superclass: AbstractReplayTestCase
> methodDict: a MethodDictionary(#testMethod->a CompiledMethod(1191: 
> MorphicRepla...etc...
> format: 134
> instanceVariables: nil
> organization: ('tests' testMethod)
> 
> subclasses: nil
> name: #MorphicReplayDemoTest
> classPool: nil
> sharedPools: nil
> environment: Smalltalk
> category: #'MorphicsRecordNPlay-Model'
> traitComposition: nil
> localSelectors: nil
> history: a Dictionary(#errors->a Set() #failures->a Set() #passed->a 
> Set(#testM...etc...
> 
> MorphicReplayDemoTest 
> class(ClassDescription)>>compile:classified:withStamp:notifying:
> Receiver: MorphicReplayDemoTest
> Arguments and temporary variables: 
> text: 'testMethod
> self addMMEFrom: 1...@512 to: 1...@504.
> self addMMEFrom: 10...etc...
> category: #'as yet unclassified'
> changeStamp: 'BartGauquie 12/20/2009 20:17'
> requestor: nil
> Receiver's instance variables: 
> superclass: AbstractReplayTestCase
> methodDict: a MethodDictionary(#testMethod->a CompiledMethod(1191: 
> MorphicRepla...etc...
> format: 134
> instanceVariables: nil
> organization: ('tests' testMethod)
> 
> subclasses: nil
> name: #MorphicReplayDemoTest
> classPool: nil
> sharedPools: nil
> environment: Smalltalk
> category: #'MorphicsRecordNPlay-Model'
> traitComposition: nil
> localSelectors: nil
> history: a Dictionary(#errors->a Set() #failures->a Set() #passed->a 
> Set(#testM...etc...
> 
> MorphicReplayDemoTest class(ClassDescription)>>compile:classified:notifying:
> Receiver: MorphicReplayDemoTest
> Arguments and temporary variables: 
> text: 'testMethod
> self addMMEFrom: 1...@512 to: 1...@504.
> self addMMEFrom: 10...etc...
> category: #'as yet unclassified'
> requestor: nil
> stamp: 'BartGauquie 12/20/2009 20:17'
> Receiver's instance variables: 
> superclass: AbstractReplayTestCase
> methodDict: a MethodDictionary(#testMethod->a CompiledMethod(1191: 
> MorphicRepla...etc...
> format: 134
> instanceVariables: nil
> organization: ('tests' testMethod)
> 
> subclasses: nil
> name: #MorphicReplayDemoTest
> classPool: nil
> sharedPools: nil
> environment: Smalltalk
> category: #'MorphicsRecordNPlay-Model'
> traitComposition: nil
> localSelectors: nil
> history: a Dictionary(#errors->a Set() #failures->a Set() #passed->a 
> Set(#testM...etc...
> 
> MorphicReplayDemoTest class(ClassDescription)>>compile:notifying:
> Receiver: MorphicReplayDemoTest
> Arguments and temporary variables: 
> code: 'testMethod
> self addMMEFrom: 1...@512 to: 1...@504.
> self addMMEFrom: 10...etc...
> requestor: nil
> Receiver's instance variables: 
> superclass: AbstractReplayTestCase
> methodDict: a MethodDictionary(#testMethod->a CompiledMethod(1191: 
> MorphicRepla...etc...
> format: 134
> instanceVariables: nil
> organization: ('tests' testMethod)
> 
> subclasses: nil
> name: #MorphicReplayDemoTest
> classPool: nil
> sharedPools: nil
> environment: Smalltalk
> category: #'MorphicsRecordNPlay-Model'
> traitComposition: nil
> localSelectors: nil
> history: a Dictionary(#errors->a Set() #failures->a Set() #passed->a 
> Set(#testM...etc...
> 
> MorphicReplayDemoTest class(Behavior)>>compile:
> Receiver: MorphicReplayDemoTest
> Arguments and temporary variables: 
> code: 'testMethod
> self addMMEFrom: 1...@512 to: 1...@504.
> self addMMEFrom: 10...etc...
> Receiver's instance variables: 
> superclass: AbstractReplayTestCase
> methodDict: a MethodDictionary(#testMethod->a CompiledMethod(1191: 
> MorphicRepla...etc...
> format: 134
> instanceVariables: nil
> organization: ('tests' testMethod)
> 
> subclasses: nil
> name: #MorphicReplayDemoTest
> classPool: nil
> sharedPools: nil
> environment: Smalltalk
> category: #'MorphicsRecordNPlay-Model'
> traitComposition: nil
> localSelectors: nil
> history: a Dictionary(#errors->a Set() #failures->a Set() #passed->a 
> Set(#testM...etc...
> 
> ByteString>>DoIt
> Receiver: 'testMethod
> self addMMEFrom: 1...@512 to: 1...@504.
> self addMMEFrom: 1...@504 to: [email protected]...
> Arguments and temporary variables: 
> 
> Receiver's instance variables: 
> 'testMethod
> self addMMEFrom: 1...@512 to: 1...@504.
> self addMMEFrom: 1...@504 to: [email protected]...
> 
> Compiler>>evaluate:in:to:notifying:ifFail:logged:
> Receiver: a Compiler
> Arguments and temporary variables: 
> textOrStream: a ReadWriteStream 'MorphicReplayDemoTest 
> compile: self.'
> aContext: nil
> receiver: 'testMethod
> self addMMEFrom: 1...@512 to: 1...@504.
> self addMMEFrom...etc...
> aRequestor: a TextMorphEditor
> failBlock: [closure] in [] in 
> TextMorphEditor(ParagraphEditor)>>evaluateSelecti...etc...
> logFlag: true
> methodNode: DoIt
> ^ MorphicReplayDemoTest compile: self
> method: a CompiledMethod(2378: ByteString>>DoIt)
> value: nil
> toLog: nil
> itsSelection: nil
> itsSelectionString: nil
> Receiver's instance variables: 
> sourceStream: a ReadWriteStream 'MorphicReplayDemoTest 
> compile: self.'
> requestor: a TextMorphEditor
> class: ByteString
> category: nil
> context: nil
> parser: a Parser
> 
> [] in TextMorphEditor(ParagraphEditor)>>evaluateSelection
> Receiver: a TextMorphEditor
> Arguments and temporary variables: 
> rcvr: 'testMethod
> self addMMEFrom: 1...@512 to: 1...@504.
> self addMMEFrom: 10...etc...
> ctxt: nil
> Receiver's instance variables: 
> model: a NewInspector
> paragraph: a MultiNewParagraph
> startBlock: a CharacterBlock with index 39 and rectangle 1...@16 corner: 
> 1...@32
> ...etc...
> stopBlock: a CharacterBlock with index 1 and character $M and rectangle 
> 0...@0 cor...etc...
> beginTypeInBlock: nil
> emphasisHere: an Array(a TextFontChange font: 2)
> initialText: a Text for 'MorphicReplayDemoTest 
> compile: self
> '
> selectionShowing: false
> otherInterval: (38 to: 38)
> lastParentLocation: nil
> morph: a TextMorphForEditView(3730)
> oldInterval: nil
> pivotBlock: nil
> 
> BlockClosure>>on:do:
> Receiver: [closure] in TextMorphEditor(ParagraphEditor)>>evaluateSelection
> Arguments and temporary variables: 
> exception: OutOfScopeNotification
> handlerAction: [closure] in 
> TextMorphEditor(ParagraphEditor)>>evaluateSelection...etc...
> handlerActive: true
> Receiver's instance variables: 
> outerContext: TextMorphEditor(ParagraphEditor)>>evaluateSelection
> startpc: 116
> numArgs: 0
> 
> TextMorphEditor(ParagraphEditor)>>evaluateSelection
> Receiver: a TextMorphEditor
> Arguments and temporary variables: 
> result: nil
> rcvr: 'testMethod
> self addMMEFrom: 1...@512 to: 1...@504.
> self addMMEFrom: 10...etc...
> ctxt: nil
> Receiver's instance variables: 
> model: a NewInspector
> paragraph: a MultiNewParagraph
> startBlock: a CharacterBlock with index 39 and rectangle 1...@16 corner: 
> 1...@32
> ...etc...
> stopBlock: a CharacterBlock with index 1 and character $M and rectangle 
> 0...@0 cor...etc...
> beginTypeInBlock: nil
> emphasisHere: an Array(a TextFontChange font: 2)
> initialText: a Text for 'MorphicReplayDemoTest 
> compile: self
> '
> selectionShowing: false
> otherInterval: (38 to: 38)
> lastParentLocation: nil
> morph: a TextMorphForEditView(3730)
> oldInterval: nil
> pivotBlock: nil
> 
> TextMorphEditor(ParagraphEditor)>>doIt
> Receiver: a TextMorphEditor
> Arguments and temporary variables: 
> 
> Receiver's instance variables: 
> model: a NewInspector
> paragraph: a MultiNewParagraph
> startBlock: a CharacterBlock with index 39 and rectangle 1...@16 corner: 
> 1...@32
> ...etc...
> stopBlock: a CharacterBlock with index 1 and character $M and rectangle 
> 0...@0 cor...etc...
> beginTypeInBlock: nil
> emphasisHere: an Array(a TextFontChange font: 2)
> initialText: a Text for 'MorphicReplayDemoTest 
> compile: self
> '
> selectionShowing: false
> otherInterval: (38 to: 38)
> lastParentLocation: nil
> morph: a TextMorphForEditView(3730)
> oldInterval: nil
> pivotBlock: nil
> 
> [] in TextMorphEditor(ParagraphEditor)>>doIt:
> Receiver: a TextMorphEditor
> Arguments and temporary variables: 
> 
> Receiver's instance variables: 
> model: a NewInspector
> paragraph: a MultiNewParagraph
> startBlock: a CharacterBlock with index 39 and rectangle 1...@16 corner: 
> 1...@32
> ...etc...
> stopBlock: a CharacterBlock with index 1 and character $M and rectangle 
> 0...@0 cor...etc...
> beginTypeInBlock: nil
> emphasisHere: an Array(a TextFontChange font: 2)
> initialText: a Text for 'MorphicReplayDemoTest 
> compile: self
> '
> selectionShowing: false
> otherInterval: (38 to: 38)
> lastParentLocation: nil
> morph: a TextMorphForEditView(3730)
> oldInterval: nil
> pivotBlock: nil
> 
> TextMorphEditor(ParagraphEditor)>>terminateAndInitializeAround:
> Receiver: a TextMorphEditor
> Arguments and temporary variables: 
> aBlock: [closure] in TextMorphEditor(ParagraphEditor)>>doIt:
> Receiver's instance variables: 
> model: a NewInspector
> paragraph: a MultiNewParagraph
> startBlock: a CharacterBlock with index 39 and rectangle 1...@16 corner: 
> 1...@32
> ...etc...
> stopBlock: a CharacterBlock with index 1 and character $M and rectangle 
> 0...@0 cor...etc...
> beginTypeInBlock: nil
> emphasisHere: an Array(a TextFontChange font: 2)
> initialText: a Text for 'MorphicReplayDemoTest 
> compile: self
> '
> selectionShowing: false
> otherInterval: (38 to: 38)
> lastParentLocation: nil
> morph: a TextMorphForEditView(3730)
> oldInterval: nil
> pivotBlock: nil
> 
> TextMorphEditor(ParagraphEditor)>>doIt:
> Receiver: a TextMorphEditor
> Arguments and temporary variables: 
> characterStream: a WriteStream ''
> Receiver's instance variables: 
> model: a NewInspector
> paragraph: a MultiNewParagraph
> startBlock: a CharacterBlock with index 39 and rectangle 1...@16 corner: 
> 1...@32
> ...etc...
> stopBlock: a CharacterBlock with index 1 and character $M and rectangle 
> 0...@0 cor...etc...
> beginTypeInBlock: nil
> emphasisHere: an Array(a TextFontChange font: 2)
> initialText: a Text for 'MorphicReplayDemoTest 
> compile: self
> '
> selectionShowing: false
> otherInterval: (38 to: 38)
> lastParentLocation: nil
> morph: a TextMorphForEditView(3730)
> oldInterval: nil
> pivotBlock: nil
> 
> TextMorphEditor(ParagraphEditor)>>dispatchOnKeyEvent:with:
> Receiver: a TextMorphEditor
> Arguments and temporary variables: 
> keyEvent: [keystroke '<Cmd-d>']
> typeAheadStream: a WriteStream ''
> honorCommandKeys: true
> keyValue: 100
> keyChar: $d
> char: $d
> action: #doIt:
> Receiver's instance variables: 
> model: a NewInspector
> paragraph: a MultiNewParagraph
> startBlock: a CharacterBlock with index 39 and rectangle 1...@16 corner: 
> 1...@32
> ...etc...
> stopBlock: a CharacterBlock with index 1 and character $M and rectangle 
> 0...@0 cor...etc...
> beginTypeInBlock: nil
> emphasisHere: an Array(a TextFontChange font: 2)
> initialText: a Text for 'MorphicReplayDemoTest 
> compile: self
> '
> selectionShowing: false
> otherInterval: (38 to: 38)
> lastParentLocation: nil
> morph: a TextMorphForEditView(3730)
> oldInterval: nil
> pivotBlock: nil
> 
> TextMorphEditor>>dispatchOnKeyEvent:with:
> Receiver: a TextMorphEditor
> Arguments and temporary variables: 
> keyEvent: [keystroke '<Cmd-d>']
> typeAheadStream: a WriteStream ''
> Receiver's instance variables: 
> model: a NewInspector
> paragraph: a MultiNewParagraph
> startBlock: a CharacterBlock with index 39 and rectangle 1...@16 corner: 
> 1...@32
> ...etc...
> stopBlock: a CharacterBlock with index 1 and character $M and rectangle 
> 0...@0 cor...etc...
> beginTypeInBlock: nil
> emphasisHere: an Array(a TextFontChange font: 2)
> initialText: a Text for 'MorphicReplayDemoTest 
> compile: self
> '
> selectionShowing: false
> otherInterval: (38 to: 38)
> lastParentLocation: nil
> morph: a TextMorphForEditView(3730)
> oldInterval: nil
> pivotBlock: nil
> 
> TextMorphEditor(ParagraphEditor)>>keystroke:
> Receiver: a TextMorphEditor
> Arguments and temporary variables: 
> keyEvent: [keystroke '<Cmd-d>']
> typeAhead: a WriteStream ''
> Receiver's instance variables: 
> model: a NewInspector
> paragraph: a MultiNewParagraph
> startBlock: a CharacterBlock with index 39 and rectangle 1...@16 corner: 
> 1...@32
> ...etc...
> stopBlock: a CharacterBlock with index 1 and character $M and rectangle 
> 0...@0 cor...etc...
> beginTypeInBlock: nil
> emphasisHere: an Array(a TextFontChange font: 2)
> initialText: a Text for 'MorphicReplayDemoTest 
> compile: self
> '
> selectionShowing: false
> otherInterval: (38 to: 38)
> lastParentLocation: nil
> morph: a TextMorphForEditView(3730)
> oldInterval: nil
> pivotBlock: nil
> 
> TextMorphEditor>>keystroke:
> Receiver: a TextMorphEditor
> Arguments and temporary variables: 
> keyEvent: [keystroke '<Cmd-d>']
> Receiver's instance variables: 
> model: a NewInspector
> paragraph: a MultiNewParagraph
> startBlock: a CharacterBlock with index 39 and rectangle 1...@16 corner: 
> 1...@32
> ...etc...
> stopBlock: a CharacterBlock with index 1 and character $M and rectangle 
> 0...@0 cor...etc...
> beginTypeInBlock: nil
> emphasisHere: an Array(a TextFontChange font: 2)
> initialText: a Text for 'MorphicReplayDemoTest 
> compile: self
> '
> selectionShowing: false
> otherInterval: (38 to: 38)
> lastParentLocation: nil
> morph: a TextMorphForEditView(3730)
> oldInterval: nil
> pivotBlock: nil
> 
> [] in [] in TextMorphForEditView(TextMorph)>>keyStroke:
> Receiver: a TextMorphForEditView(3730)
> Arguments and temporary variables: 
> evt: [keystroke '<Cmd-d>']
> Receiver's instance variables: 
> bounds: 0...@0 corner: 3...@34
> owner: a TransformMorph(942)
> submorphs: #()
> fullBounds: 0...@0 corner: 3...@34
> color: Color black
> extension: a MorphExtension (3477) [other: (blinkStart -> 11369859)]
> borderWidth: 0
> borderColor: Color black
> textStyle: a TextStyle Bitmap DejaVu Sans 9
> text: a Text for 'MorphicReplayDemoTest 
> compile: self.'
> wrapFlag: true
> paragraph: a MultiNewParagraph
> editor: a TextMorphEditor
> container: nil
> predecessor: nil
> successor: nil
> backgroundColor: nil
> margins: nil
> editHistory: a TextMorphCommandHistory
> editView: a PluggableTextMorphPlus(2866)
> acceptOnCR: false
> 
> TextMorphForEditView(TextMorph)>>handleInteraction:
> Receiver: a TextMorphForEditView(3730)
> Arguments and temporary variables: 
> interactionBlock: [closure] in [] in 
> TextMorphForEditView(TextMorph)>>keyStroke...etc...
> oldEditor: a TextMorphEditor
> oldParagraph: a MultiNewParagraph
> oldText: a Text for 'MorphicReplayDemoTest 
> compile: self.'
> Receiver's instance variables: 
> bounds: 0...@0 corner: 3...@34
> owner: a TransformMorph(942)
> submorphs: #()
> fullBounds: 0...@0 corner: 3...@34
> color: Color black
> extension: a MorphExtension (3477) [other: (blinkStart -> 11369859)]
> borderWidth: 0
> borderColor: Color black
> textStyle: a TextStyle Bitmap DejaVu Sans 9
> text: a Text for 'MorphicReplayDemoTest 
> compile: self.'
> wrapFlag: true
> paragraph: a MultiNewParagraph
> editor: a TextMorphEditor
> container: nil
> predecessor: nil
> successor: nil
> backgroundColor: nil
> margins: nil
> editHistory: a TextMorphCommandHistory
> editView: a PluggableTextMorphPlus(2866)
> acceptOnCR: false
> 
> TextMorphForEditView>>handleInteraction:
> Receiver: a TextMorphForEditView(3730)
> Arguments and temporary variables: 
> interActionBlock: [closure] in [] in 
> TextMorphForEditView(TextMorph)>>keyStroke...etc...
> Receiver's instance variables: 
> bounds: 0...@0 corner: 3...@34
> owner: a TransformMorph(942)
> submorphs: #()
> fullBounds: 0...@0 corner: 3...@34
> color: Color black
> extension: a MorphExtension (3477) [other: (blinkStart -> 11369859)]
> borderWidth: 0
> borderColor: Color black
> textStyle: a TextStyle Bitmap DejaVu Sans 9
> text: a Text for 'MorphicReplayDemoTest 
> compile: self.'
> wrapFlag: true
> paragraph: a MultiNewParagraph
> editor: a TextMorphEditor
> container: nil
> predecessor: nil
> successor: nil
> backgroundColor: nil
> margins: nil
> editHistory: a TextMorphCommandHistory
> editView: a PluggableTextMorphPlus(2866)
> acceptOnCR: false
> 
> 
> --- The full stack ---
> UndefinedObject(Object)>>doesNotUnderstand: #<
> EncoderForV3PlusClosures(EncoderForV3)>>genPushLiteral:
> EncoderForV3PlusClosures(BytecodeEncoder)>>sizeOpcodeSelector:withArguments:
> EncoderForV3PlusClosures(BytecodeEncoder)>>sizePushLiteral:
> LiteralNode>>sizeCodeForValue:
> [] in MessageNode>>sizeCodeForValue:
> Array(SequenceableCollection)>>collect:
> MessageNode>>sizeCodeForValue:
> [] in MessageNode>>sizeCodeForValue:
> OrderedCollection>>collect:
> MessageNode>>sizeCodeForValue:
> MessageNode(ParseNode)>>sizeCodeForEffect:
> MessageNode>>sizeCodeForEffect:
> BlockNode>>sizeCodeExceptLast:
> BlockNode>>sizeCodeForEvaluatedValue:
> BytecodeAgnosticMethodNode>>generate:
> CompiledMethodWithNode class>>generateMethodFromNode:trailer:
> MorphicReplayDemoTest 
> class(Behavior)>>compile:classified:notifying:trailer:ifFail:
> MorphicReplayDemoTest 
> class(ClassDescription)>>compile:classified:withStamp:notifying:logSource:
> MorphicReplayDemoTest 
> class(ClassDescription)>>compile:classified:withStamp:notifying:
> MorphicReplayDemoTest class(ClassDescription)>>compile:classified:notifying:
> MorphicReplayDemoTest class(ClassDescription)>>compile:notifying:
> MorphicReplayDemoTest class(Behavior)>>compile:
> ByteString>>DoIt
> Compiler>>evaluate:in:to:notifying:ifFail:logged:
> [] in TextMorphEditor(ParagraphEditor)>>evaluateSelection
> BlockClosure>>on:do:
> TextMorphEditor(ParagraphEditor)>>evaluateSelection
> TextMorphEditor(ParagraphEditor)>>doIt
> [] in TextMorphEditor(ParagraphEditor)>>doIt:
> TextMorphEditor(ParagraphEditor)>>terminateAndInitializeAround:
> TextMorphEditor(ParagraphEditor)>>doIt:
> TextMorphEditor(ParagraphEditor)>>dispatchOnKeyEvent:with:
> TextMorphEditor>>dispatchOnKeyEvent:with:
> TextMorphEditor(ParagraphEditor)>>keystroke:
> TextMorphEditor>>keystroke:
> [] in [] in TextMorphForEditView(TextMorph)>>keyStroke:
> TextMorphForEditView(TextMorph)>>handleInteraction:
> TextMorphForEditView>>handleInteraction:
> - - - - - - - - - - - - - - - 
> - - - - - - - - - - - - - - - - - -
> [] in TextMorphForEditView(TextMorph)>>keyStroke:
> ECToolSet class>>codeCompletionAround:textMorph:keyStroke:
> DEVToolSet class>>codeCompletionAround:textMorph:keyStroke:
> ToolSet class>>codeCompletionAround:textMorph:keyStroke:
> TextMorphForEditView(TextMorph)>>keyStroke:
> TextMorphForEditView>>keyStroke:
> TextMorphForEditView(TextMorph)>>handleKeystroke:
> KeyboardEvent>>sentTo:
> TextMorphForEditView(Morph)>>handleEvent:
> TextMorphForEditView(Morph)>>handleFocusEvent:
> [] in HandMorph>>sendFocusEvent:to:clear:
> [] in PasteUpMorph>>becomeActiveDuring:
> BlockClosure>>on:do:
> PasteUpMorph>>becomeActiveDuring:
> HandMorph>>sendFocusEvent:to:clear:
> HandMorph>>sendEvent:focus:clear:
> HandMorph>>sendKeyboardEvent:
> HandMorph>>handleEvent:
> HandMorph>>processEvents
> [] in WorldState>>doOneCycleNowFor:
> Array(SequenceableCollection)>>do:
> WorldState>>handsDo:
> WorldState>>doOneCycleNowFor:
> WorldState>>doOneCycleFor:
> PasteUpMorph>>doOneCycle
> [] in Project class>>spawnNewProcess
> [] in BlockClosure>>newProcess
> -----------------------------------------------------------
> 
> 
> _______________________________________________
> Pharo-project mailing list
> [email protected]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
> 
> 
> _______________________________________________
> Pharo-project mailing list
> [email protected]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
> 
> 
> 
> -- 
> imagination is more important than knowledge - Albert Einstein
> Logic will get you from A to B. Imagination will take you everywhere - Albert 
> Einstein
> Learn from yesterday, live for today, hope for tomorrow. The important thing 
> is not to stop questioning. - Albert Einstein
> The true sign of intelligence is not knowledge but imagination. - Albert 
> Einstein
> Gravitation is not responsible for people falling in love. - Albert Einstein
> 
> _______________________________________________
> Pharo-project mailing list
> [email protected]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
> 
> <Encoder-notify.st>_______________________________________________
> Pharo-project mailing list
> [email protected]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Reply via email to