tfpt review "/shelveset:ParseTree5;REDMOND\tomat" Comment : Bunch of tweaks to AST: - removes some nodes that are notneeded any more, - moves block argument out of Arguments to CallExpression, Fixes several bugs: - order of evaluation in "(x,y) while z", - passing parameters to a super method when a block is specified "super {}", - yield should report an error when a block argument is given "yield &p" Implements ParseTree library - there are few nodes that are to be finished, - in some cases the generated parse tree deosn''t exactly match MRI (some of which I consider bugs in MRI), - adds ir_parse_tree.rb that implements the same API as parse_tree.rb calling to IronRuby for tree transformation, - only string parsing is supported now, getting AST from method/class at runtime is not yet implemented. Tomas -------------- next part -------------- A non-text attachment was scrubbed... Name: ParseTree5.diff Type: application/octet-stream Size: 465969 bytes Desc: ParseTree5.diff URL: <http://rubyforge.org/pipermail/ironruby-core/attachments/20081020/82d3d7c6/attachment-0001.obj>
In ir_parse_tree.rb, there''s code near the bottom that''s ''if RUBY_VERSION > "1.9"''. Is that version check a typo or does it actually reflect differences between 1.9 and 1.9.1? Otherwise, changes look good. And exciting! -----Original Message----- From: Tomas Matousek Sent: Monday, October 20, 2008 8:03 PM To: IronRuby External Code Reviewers Cc: ironruby-core at rubyforge.org Subject: Code Review: ParseTree5 tfpt review "/shelveset:ParseTree5;REDMOND\tomat" Comment : Bunch of tweaks to AST: - removes some nodes that are notneeded any more, - moves block argument out of Arguments to CallExpression, Fixes several bugs: - order of evaluation in "(x,y) while z", - passing parameters to a super method when a block is specified "super {}", - yield should report an error when a block argument is given "yield &p" Implements ParseTree library - there are few nodes that are to be finished, - in some cases the generated parse tree deosn''t exactly match MRI (some of which I consider bugs in MRI), - adds ir_parse_tree.rb that implements the same API as parse_tree.rb calling to IronRuby for tree transformation, - only string parsing is supported now, getting AST from method/class at runtime is not yet implemented. Tomas
ir_parse_tree.rb is just a copy of parse_tree.rb from ParseTree gem with C code replaced by a call to IronRuby. I haven''t modified anything other than that. Tomas -----Original Message----- From: Curt Hagenlocher Sent: Monday, October 20, 2008 8:45 PM To: Tomas Matousek; IronRuby External Code Reviewers Cc: ironruby-core at rubyforge.org Subject: RE: Code Review: ParseTree5 In ir_parse_tree.rb, there''s code near the bottom that''s ''if RUBY_VERSION > "1.9"''. Is that version check a typo or does it actually reflect differences between 1.9 and 1.9.1? Otherwise, changes look good. And exciting! -----Original Message----- From: Tomas Matousek Sent: Monday, October 20, 2008 8:03 PM To: IronRuby External Code Reviewers Cc: ironruby-core at rubyforge.org Subject: Code Review: ParseTree5 tfpt review "/shelveset:ParseTree5;REDMOND\tomat" Comment : Bunch of tweaks to AST: - removes some nodes that are notneeded any more, - moves block argument out of Arguments to CallExpression, Fixes several bugs: - order of evaluation in "(x,y) while z", - passing parameters to a super method when a block is specified "super {}", - yield should report an error when a block argument is given "yield &p" Implements ParseTree library - there are few nodes that are to be finished, - in some cases the generated parse tree deosn''t exactly match MRI (some of which I consider bugs in MRI), - adds ir_parse_tree.rb that implements the same API as parse_tree.rb calling to IronRuby for tree transformation, - only string parsing is supported now, getting AST from method/class at runtime is not yet implemented. Tomas