Milarepa BNF/Perl Parsing language

jeffrey@netcom.com (Jeffrey Kegler)
Sun, 14 Mar 1993 00:44:44 GMT

          From comp.compilers

Related articles
Milarepa BNF/Perl Parsing language jeffrey@netcom.com (1993-03-14)
| List of all articles for this month |

Newsgroups: comp.archives.admin,comp.compilers,comp.lang.perl
From: jeffrey@netcom.com (Jeffrey Kegler)
Keywords: tools
Organization: Algorists, Inc.
References: <free1-Mar-93@comp.compilers>
Date: Sun, 14 Mar 1993 00:44:44 GMT

  muir@idiom.berkeley.ca.us writes:
>language: Milarepa (BNF variant)
>package: Marpa
>version: ?


Version: Prototype 0.0. I will release Prototype 1.0 in a few days.
Prototype here means not even yet alpha, much less beta. It also means
those with specific applications are probably well advised to look
elsewhere, for the time being.


>parts: parser-generator, examples
>author: Jeffrey Kegler <jeffrey@algor2.ALGORISTS.COM>
>description: Milarepa is a program which uses a subset of Marpa's
> capabilities to take a file of BNF and associated
> actions (in Perl!), and parse them into a Perl program
> which parses its input standard, performing the
> actions.
> This is intended to be a real hacker's parser. It is
> not restricted to LR(k), and the parse logic follows
> directly from the BNF.


Thanks to David Muir Sharnoff for having the thoroughness to find my
effort, and document it.


While I am conceited enough about my own work to lose contact with reality
from time to time, I'd like to avoid having proof of that fact posted to
the net. Milarepa/Marpa is intended *eventually* (after Perl 5.0 is out)
to be a real hacker's parser. The phrase above ("real hacker's parser")
is my own, but it's taken out of the context which repeatedly describes
Milarepa/Marpa as a *prototype*. This makes it appear to be a claim,
which, when compared with what I actually delivered, casts serious doubt
on my sanity, my veracity or both.


Right now, Milarepa is too slow for anything but experimental use, or
perhaps very small applications which are ensured never to grow, because
it's parse engine is written in Perl -- a perfect tool for all of Milarepa
except the Marpa parse engine. The Marpa parse engine runs fast when
written using pointer logic in C, as I have done elsewhere. What's needed
is to combine the Marpa parse engine in the fast C implementation (which
I've already done) with the power of Perl.


Perl 5.0 will, I believe, allow embedding C language into a Perl package.
Once it is out, and I have converted Marpa into C, the first Alpha release
of Milarepa will come out.


--
Jeffrey Kegler, Independent UNIX Consultant, Algorists, Inc.
jeffrey@algor2.ALGORISTS.COM
137 E Fremont AVE #122, Sunnyvale CA 94087
--


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.