> On 2/19/13, David A. Wheeler said:
> > in the process of adding lots of tests
> > I've identified a subtle bug in the Scheme implementation THAT isn't in the
> > ANTLR implementation.
Alan Manuel Gloria:
> Going only from your previous source descriptions (I don't have access
> to my hack machine right now), it feels like the problem is with
> propagating upwards the monadic fail operation ("failed due to *>")
> from the lower level SUBLIST handling.
I believe I just found and fixed the problem, and in some sense your intuition
was correct.
In the ANTLR implementation, a "*>" would force a preceding EOL; I even
documented this. Unfortunately, I forgot to implement that in the Scheme
implementation. Ugh. In the Scheme implementation, an EOL only has an effect
if there's something between the indent and "*>", and only in certain cases at
that. Instead of doing exactly the same thing, I just force the value into a
list if it's non-null (this is the final effect of the EOL insertion, and is
way more efficient to accomplish in Scheme). Although the code in that spot
isn't *identical*, there's a clear and simple *mapping*, and that's the key
point.
I now know of no bugs in the Scheme implementation, and we have (1) a big test
suite and (2) a clear mapping to the BNF.
That's sadly not the same thing as "the Scheme code is bug-free", but it's a
start. If anyone encounters any bugs where it incorrectly maps correct
sweet-expressions to wrong results, I *really* want to know.
--- David A. Wheeler
------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_feb
_______________________________________________
Readable-discuss mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/readable-discuss