RE: yacc for Pascal, was Why LL(1) Parsers do not support left recursion?

Quinn Tyler Jackson <qtj-query@shaw.ca>
31 Jul 2006 23:33:36 -0400

          From comp.compilers

Related articles
Re: yacc for Pascal, was Why LL(1) Parsers do not support left recursi DrDiettrich1@aol.com (Hans-Peter Diettrich) (2006-07-31)
RE: yacc for Pascal, was Why LL(1) Parsers do not support left recursi qtj-query@shaw.ca (Quinn Tyler Jackson) (2006-07-31)
Re: yacc for Pascal, was Why LL(1) Parsers do not support left recursi DrDiettrich1@aol.com (Hans-Peter Diettrich) (2006-08-03)
RE: yacc for Pascal, was Why LL(1) Parsers do not support left recursi qtj-query@shaw.ca (Quinn Tyler Jackson) (2006-08-06)
| List of all articles for this month |

From: Quinn Tyler Jackson <qtj-query@shaw.ca>
Newsgroups: comp.compilers
Date: 31 Jul 2006 23:33:36 -0400
Organization: Compilers Central
References: 06-07-111
Keywords: parse, tools

Chris Clark:




> > I think something pretty close to your dream exists and is called
> > GrammarForge (and was previously called meta-S) written by Quinn Tyler
> > Jackson. His goal is to have an engine where one can do everything at
> > the grammar level.
...


DoDi:
> I've participated in the beta test of Meta-S, and this may have
> influenced my opinion about useful parser generators. It's really a
> great tool, with only few limitations :-)


As I mentioned previously, The Grammar Forge, and all related IP (the Meta-S
parsing engine) were acquired by Thothic Technology Partners some time ago.
I am a principal in TTP, and am the Chief Scientist, but no longer
personally own the technology.


Yes, I believe everything should be do-able at the grammar level. My general
rule of thumb has been based on Miller's 7 +/- 2 theory that human beings
can grok things with 7 +/- 2 items to keep in mind. So, if some semantic
construction can be parsed in 7 +/- 2 productions, I'll do my best to put it
in the grammar, rather than "fake it" in the code. I consider a grammar
broken (until proven otherwise) the moment it *must* call code in a
reduction to know whether or not it should accept something as legal. Call
me old-fashioned. ;-) To date, I have encountered no decidable language that
cannot be expressed entirely in a $-grammar (and that without becoming
opaque*). (I've also found none that take longer than O(n^m) where m < 3 to
parse input, now that so many post-acquisition optimizations and additions
have been made to the engine.)


--
Quinn Tyler Jackson
http://www.thothic.com


* Opaqueness is in the eye of the beholder -- I use Miller's heuristic to
define opaqueness. YMMV. Nothing fun is trivially obvious. ;-)


Post a followup to this message

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