From: David Masover Date: 2009-02-27T16:11:30+09:00 Subject: Re: Nexus Programming Language Charles Oliver Nutter wrote: > And now that ruby_parser can be used for almost all the offline > PT-based tools, there's even less motivation. Merb uses ParseTree for something called ActionArgs feature which, as I understand it, actually relies on the name of function parameters. For example, if you have an action which takes an argument called 'foo', and that URL is hit with a querystring like ?foo=bar, it will pass that value ('bar', in that case) as that argument. This actually seems to no longer need ParseTree -- that's used on MRI -- but it also seems to have very different code for each of the three VMs supported. It's worth mentioning that Merb is being merged into Rails. Merb 2 will be Rails 3, and vice versa. So, while it's solved, it's not an entirely obscure concern. > while PT did a good job exposing the general structure of MRI's AST, > it also exposes MRI's implementation warts. We don't feel a strong > need to emulate those warts. Ideally, the goal wouldn't be to emulate MRI's warts, but to expose something generic enough to be common, but practical. I would hope it would do a good job of exposing the original structure of the source code, even if that is completely annihilated by optimizations in the version actually executed. In fact, I think the closest we have to "something like ParseTree" which "helps support alternate implementations" might be Rubinius. Unfortunately, I don't seem to see any of the other alternate implementations moving in that direction.