guile-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: PEG Parser


From: Noah Lavine
Subject: Re: PEG Parser
Date: Thu, 27 Jan 2011 00:17:50 -0500

Hi,

> It flattens until you have a list where each element either:
> 1. Is an atom.
> or 2. Is a list whose first element is in the list of keywords.
>
> So the car of the argument will change if it's a list that doesn't
> start with the right keyword.  E.g.:
> (keyword-flatten '(a) '((c (a b)) (a b) (b a))) ->
> (c (a b) (a b) b a)

I see.

> That's odd.  Could you paste in the lambda expression it generates?

Wait, actually, I realized it was my own error. My test function was
using nonterminals, but I had only done (define grammar-string ....),
not (define-grammar grammar-string). I think the generated code tried
to call the nonterminals that should have been there, and threw an
error when it didn't find them.

The peg matcher is really awesome. I am glad to be able to use it soon.

Noah



reply via email to

[Prev in Thread] Current Thread [Next in Thread]