An "open" letter to Karsten Nyblad (and other compiler compiler implementors)

Chris F Clark <cfc@shell01.TheWorld.com>
18 Jun 2005 23:21:12 -0400

          From comp.compilers

Related articles
Practical LALR(1) grammer? weltraum@astrocat.de (2005-06-12)
Re: Practical LALR(1) grammer? haberg@math.su.se (2005-06-13)
Re: Practical LALR(1) grammer? haberg@math.su.se (2005-06-13)
Re: Practical LALR(1) grammer? d148f3wg02@sneakemail.com (Karsten Nyblad) (2005-06-16)
An "open" letter to Karsten Nyblad (and other compiler compiler implem cfc@shell01.TheWorld.com (Chris F Clark) (2005-06-18)
Re: An "open" letter to Karsten Nyblad (and other compiler compiler im vtsikoza@yahoo.com (2005-06-21)
Re: An "open" letter to Karsten Nyblad (and other compiler compiler im wyrmwif@tsoft.org (SM Ryan) (2005-06-22)
Re: An "open" letter to Karsten Nyblad (and other compiler compiler im qrczak@knm.org.pl (Marcin 'Qrczak' Kowalczyk) (2005-06-23)
Re: An "open" letter to Karsten Nyblad (and other compiler compiler im cfc@shell01.TheWorld.com (Chris F Clark) (2005-06-23)
Re: An "open" letter to Karsten Nyblad (and other compiler compiler im wyrmwif@tsoft.org (SM Ryan) (2005-06-24)
Re: An "open" letter to Karsten Nyblad (and other compiler compiler im vtsikoza@yahoo.com (2005-06-24)
[3 later articles]
| List of all articles for this month |

From: Chris F Clark <cfc@shell01.TheWorld.com>
Newsgroups: comp.compilers
Date: 18 Jun 2005 23:21:12 -0400
Organization: The World Public Access UNIX, Brookline, MA
References: 05-06-074 05-06-076 05-06-079 05-06-086
Keywords: tools

This note is in response to the following posting. I originally
intended it to be a private email, but since his address was
apparently invalid, I needed to respond in public, which is probably
just as well, since some of what I write is a general invitation.


Karsten Nyblad <d148f3wg02@sneakemail.com> writes:


> Todays computers are large enough to handle LALR(K) with K larger than
> 1. I am building a parser generator that can handle LALR(K), and is
> capable of generating the internal data structures for an LALR(8)
> parser for Ada83 in 1GB.
...
> I am trying to build such a parser generator. I have introduced new
> disambiguate rules on top of the normal #left, #right and #not. This
> rules specify that the parser generator should use a larger value of K
> than one and/or that it should use LR(K) state splitting. However, it
> is a considerable work to write such a parser generator. I think I
> will have more than 30,000 lines of code, before I am finished.


Karsten,


First, good luck on your new project. I have every faith that you
won't need luck though, since you've previously had success on very
similar projects.


Second, would it be possible to get a specification for the notations
you are intending to use? Some of the features you are implementing
are already implemented in Yacc++ or intended to be implemented, and
I'm going through a phase of trying to make Yacc++ more source (and
target) compatible with other parser generators (i.e. so one can read
in grammars not inteded for Yacc++ and get out outputs that you can
use with other implementations). For one of my laments is that to a
large extent the compiler-compiler world is fairly Balkanized.


Third, I am wondering if it might be possible to cooperate on your new
project. I would offer you a copy of Yacc++ to start as the basis of
your new project, but it sounds like you already have a working
prototype. However, there may be code or algorithm snippets that you
could borrow from Yacc++. I would also be happy to discuss with you
the ideas you are pursuing, if you would find that useful.


Hope this helps,
-Chris


*****************************************************************************
Chris Clark Internet : compres@world.std.com
Compiler Resources, Inc. Web Site : http://world.std.com/~compres
23 Bailey Rd voice : (508) 435-5016
Berlin, MA 01503 USA fax : (978) 838-0263 (24 hours)
------------------------------------------------------------------------------



Post a followup to this message

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