Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic

Re: Core computer science in Perl

by Jeffrey Kegler (Hermit)
on Apr 17, 2010 at 02:35 UTC ( #835221=note: print w/replies, xml ) Need Help??

in reply to Core computer science in Perl

Perhaps you might also want to look at my new parser generator, Marpa. Marpa is based on recent improvements to Earley's algorithm and is a general parser generator. It will parse from any grammar that you can write as BNF, without restriction. It handles ambiguity, left-recursion, right-recursion, you name it.

Speeds seem quite acceptable in practical instances. I've written an HTML parser based on Marpa, Marpa::HTML, which is also on CPAN. That distribution contains an HTML pretty-printing utility, which I find useful in my own work.

General BNF parsing has been neglected over the recent past and, despite signs it can be quite practical, has not resulted in any tools in widespread use. I hope Marpa will make BNF useable in the same way that regular expressions are now.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://835221]
[stevieb]: in a C++ header file, if a function declaration is listed twice with each listing containing different params, that's just essentially allowing one function accept two different arg lists, yes?
[stevieb]: int func(int x, int y);
[stevieb]: int func(int x);
[stevieb]: For example

How do I use this? | Other CB clients
Other Users?
Others taking refuge in the Monastery: (3)
As of 2017-06-28 23:58 GMT
Find Nodes?
    Voting Booth?
    How many monitors do you use while coding?

    Results (653 votes). Check out past polls.