[Haskell-cafe] Techniques for ensuring parser correctness?

Eric Kow kowey at darcs.net
Mon Jul 26 06:38:47 EDT 2010


On Mon, Jul 26, 2010 at 03:01:54 +0000, Jason Dagit wrote:
> I think the grammar is fairly simple, although I'm not confident classifying
> it.  I know it can be parsed with just a simple pass over the data.  The
> only uses of backtracking are just to figure out what is next, like a peek
> at the next token.  Let me give you some samples of what the input looks
> like.

For the interested, I think you can view

 http://darcs.net/src/Darcs/Patch/Read.hs

or better yet darcs get --lazy http://darcs.net

> Here are three entries from the "inventory" they correspond to PatchInfos:
> [TAG 2.4
> Reinier Lamers <tux_rocker at reinier.de>**20100226180900
>  Ignore-this: 36ce0456c214345f55a7bc5fc142e985
> ]

If it turns out to be a sufficiently low-powered grammar, we should
probably write it up formally and stick it in the source code for
documentation.

Eric

PS. We've been making little bits of progress trying to document Darcs
    on a technical high level, eg.

    - http://wiki.darcs.net/DarcsInternals/Record
    - http://wiki.darcs.net/DarcsInternals/CacheSystem

    Such a grammar would be a nice addition to the
    good-enough-that-you-could-rewrite-Darcs-in-Fortran aspiration.

-- 
Eric Kow <http://www.nltg.brighton.ac.uk/home/Eric.Kow>
For a faster response, please try +44 (0)1273 64 2905.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
Url : http://www.haskell.org/pipermail/haskell-cafe/attachments/20100726/580ce635/attachment.bin


More information about the Haskell-Cafe mailing list