Hi David, I see you complaining about my PEG code on and on in the commit messages. Could you please share with me what doesn't work for you with the variable bindings and dictionary merging (instead of insulting my intelligence over SVN)?
I see that the merge results are not very handy to use, this is simpler in the Ruby OMeta implementation for example, and from the author's weblog I suspect PyMeta works the same way. I'm a big advocate of that. Some advantages: * The host language variables (and their scoping) can be used for intermediate parsing results. * Rules are much more readable because of this and the implicit input stream. * It's a proven design. Using PEG classes is probably right for a PEG framework, but for OMeta, it's probably better for the implementation quality to throw away what I wrote earlier and start from scratch. Besides, I don't see the problem with variable overwriting when merging, at least not in the dictionary implementation I remember having written. When merging two dictionaries, these two linked lists are appended, as far as I remember. So the entry closest to the start of the list always wins. *Of course* this is only a prototype implementation, but it's simple to understand (to me) and doesn't require massive amounts of testing to make sure it won't produce any hard-to-track bugs later on. So what's the reason to change that? Did you run into performance problems? Best regards, G?nther On Fri, Jan 22, 2010 at 01:29:03AM -0000, David Chisnall wrote: > Author: theraven > Date: Fri Jan 22 02:29:02 2010 > New Revision: 5857 > > URL: http://svn.gna.org/viewcvs/etoile?rev=5857&view=rev > Log: > More fixes to the dictionary passing code in OMeta. Now parsing is working > vaguely as it ought to, instead of randomly failing because the PEG code > didn't understand the concept of scopes or replacement, I can get back to > working on code generation... > > > Modified: > branches/guenther/ObjMeta/OMTest.tool/Resources/OMGrammar.st > branches/guenther/ObjMeta/OMTest.tool/Resources/OMTest.st > > > _______________________________________________ > Etoile-cvs mailing list > etoile-...@gna.org > https://mail.gna.org/listinfo/etoile-cvs
_______________________________________________ Etoile-dev mailing list Etoile-dev@gna.org https://mail.gna.org/listinfo/etoile-dev