On Tue, May 14, 2013 at 1:03 PM, Clément Bera <[email protected]>wrote:
> Hey Guille, > > To debug AST-interpreter there is a specific AIContextInspector. What you > can do is just to inspect in the debugger the latest AIContext created by > the AST-interpreter and you should see the stack of AIContext in the > inspector. It is not perfect but it helps a lot. There is also the > AST-Debugger but it is just a prototype so you can hardly use it. > Buu, how do I get the ASTDebugger? Maybe I can give it a try... > > testEnsureTricky is the one that checks ensure nested in the on:do: works > correctly. Basically it checks when you unwind the context up to the > exception handler that you executes the ensure blocks code. It's kind of > the trickiest one to fix :/. In the exception chapter of Deep into Pharo I > added a section somewhere in Exception implementation about that, it might > help you to read it. > > Take care, AST-interpreter tests might not be enough. You should check the > console output of the AST-interpreter-regression build too. (here : > https://ci.inria.fr/rmod/job/ast-interpreter-regression/89/console) But > it is failing since some new updates in Pharo 3.0 ... > I'm looking at https://ci.inria.fr/rmod/job/ast-interpreter-regression/. What does this job test/do? We can add that to the description :) Anyway, I'm loading the same as the job, so I can test the slice locally in my machine :) > > Are you committing on the AST-interpreter repository or on Pharo directly ? > Pharo... Should I commit to the other repo? Don't have grants =^). > I don't think there are but there might be some fixes already on the dev > branch > Smalltalkhub user: dh83 project: ast-interpreter > Will check. Actually, I just loaded bleeding edge + merged my slice, and the same test still fails. > > I would like to work on Opal test this afternoon but if you come to lille > this week (not today because there is the strike) we can have a look > together. > Tomorrow! > For M4te I've also fixed some stuff in Hz on the m4te repo (basically > compatibility with the new RB visitor API) it might be nice to commit it on > your repo too. > cool :) > > See you, > > > > 2013/5/14 Guillermo Polito <[email protected]> > >> Right now, in the image there exist two ways to annotate an AST: >> - the Opal way >> - the RB Way >> >> We should simplify that by having only one. So far, the only user of the >> RB bindings is the ASTInterpreter + the RB tests. >> >> So, I prepared a slice and issue [1], with the following details >> >> - annotate ast using opal annotator >> - extended OCBindings to read and write from an AST interpreter >> - not yet made a difference between arg nodes with a different class >> (just put an if) >> - i didnt add inst vars into the opal bindings for the binding->node >> relation as in RB, I send the node as a parameter >> - I had to adapt the #compile: into ASTInterpreter because >> - opal does not annotate other than method nodes >> - undeclared variables raised warnings, not errors >> >> There is one problem yet, I have only one failing test: >> #testEnsureTricky. I don't understand yet why it is failing and debugging >> it is pretty complex :). So any help is welcome in reviewing the changes. >> >> Guille >> >> [1] >> https://pharo.fogbugz.com/f/cases/10610/Make-ASTInterpreter-use-OC-Opal-bindings-instead-of-RB-bindings >> > > > > -- > Clément Béra > Mate Virtual Machine Engineer > Bâtiment B 40, avenue Halley 59650 *Villeneuve d'Ascq* >
