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

Reply via email to