Loup,

By 'fork' I meant to imply creating a publicly-visible repository that pops up 
in google searches and prevents you finding the place where the progress is 
being made, unless you happen to spot the tiny icon hidden in the corner that 
takes you to the repo from which your current page was forked.  (That's a 
personal gripe and might be blowing my dislike of github, et al., out of all 
proportion. :)  Cloning a repo and experimenting/breaking/repairing in order to 
understand is not the same, nor is using your local Mercurial repository clone 
to work locally and then contribute back to a parent repo.  If that's what Faré 
meant by "fork" then I'm all for it.

On Oct 21, 2013, at 08:36 , Loup Vaillant-David wrote:

> I'm now doing the same with Earley Parsing[3].

The Wikipedia article's presentation is not the clearest and it is about the 
minimum needed, with some reading between the lines, to make a working 
recogniser.

Earley's thesis and original papers are known to contain errors.  I recommend 
you get hold of "Parsing Techniques: A Practical Guide" (Grune and Jacobs, 
Springer, 2008) which presents lots of parsing algorithms (including several 
chart parsers) clearly and concisely.  There are a few papers building on 
Earley's work that contain clear presentations of the original algorithm, parse 
tree reconstruction and their compact representations; e.g., "SPPF-Style 
Parsing from Earley Recognisers" (Elizabeth Scott, Elsevier, 2008) and 
"Practical Earley Parsing" (Aycock and Horspool, The Computer Journal, 45(6), 
2002).

I agree entirely that after noticing that following the causality of predict 
and scan steps (backwards from the final states) gives all the derivations, the 
rest is relatively easy.

> - Read scientific papers.  I gathered a surface understanding of some
>   principles, but nothing solid yet.
> - Build a toy from scratch.  I'll probably do that, since it worked
>   so far.

These two are fun to do in parallel.  They feed each other very well.

> Here is how I would imagine my dream world.  It would be a central
> repository with:
> 
> - A toy Maru, optimised for clarity.
> - A tutorial for writing your own toy.
> - A serious Maru, lifted up from the toy.
> - A tutorial for lifting your own toy up.
> - The hand-written bootstrap compilers (for understanding, and the
>   Trusting Trust problem).
> 
> Does this dream world sounds possible? Is it even a good idea?

I hope so, and I think so.  At some point you could consider literate 
programming.  Jones Forth is one example of how this can be attempted even from 
the very first point 
(http://rwmj.wordpress.com/2010/08/07/jonesforth-git-repository).  By the time 
you're on the third step, the above hierarchy could begin to support source 
code representations intended for ease of understanding.

Regards
Ian

_______________________________________________
fonc mailing list
fonc@vpri.org
http://vpri.org/mailman/listinfo/fonc

Reply via email to