Tony,
I made a start on the basis suggested (i.e. change #string) and
quickly realised that I need TWO records for string. The first one is
just a simple sequence of characters but I ALSO need another
representing an interpolated string. I was destroying the first to
create the second. SO... I went to create #istring
(interpolated_string) and noticed you already have #dstring. Looking
at the interpolation code, it seems that #dstring is exactly what my
#istring was going to be. I didn't bottom out the analysis of the code
(as you said, a little tangly) but perhaps you can confirm that this
is the case? If so, I will use #dstring, of course.
Cheers,
Graeme
BTW, using a PEG seems to make parsing these constructs almost
trivial, as we had hoped it would. My only issue is how the parse tree
should look.
g
______________________________