Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.compilers > #380
| Path | csiph.com!x330-a1.tempe.blueboxinc.net!usenet.pasdenom.info!goblin1!goblin.stu.neva.ru!usenet.stanford.edu!news.iecc.com!nerds-end |
|---|---|
| From | Quinn Tyler Jackson <quinn_jackson2004@yahoo.ca> |
| Newsgroups | comp.compilers |
| Subject | Re: How detect cycle in grammar ? |
| Date | Fri, 2 Dec 2011 09:20:55 -0800 |
| Organization | Compilers Central |
| Lines | 62 |
| Sender | news@iecc.com |
| Approved | comp.compilers@iecc.com |
| Message-ID | <11-12-008@comp.compilers> (permalink) |
| References | <11-11-041@comp.compilers> <11-11-045@comp.compilers> <11-11-050@comp.compilers> <11-11-057@comp.compilers> <11-11-066@comp.compilers> <11-11-068@comp.compilers> <11-12-004@comp.compilers> |
| NNTP-Posting-Host | news.iecc.com |
| X-Trace | leila.iecc.com 1323028837 34833 64.57.183.58 (4 Dec 2011 20:00:37 GMT) |
| X-Complaints-To | abuse@iecc.com |
| NNTP-Posting-Date | Sun, 4 Dec 2011 20:00:37 +0000 (UTC) |
| Keywords | parse, errors |
| Posted-Date | 04 Dec 2011 15:00:36 EST |
| X-submission-address | compilers@iecc.com |
| X-moderator-address | compilers-request@iecc.com |
| X-FAQ-and-archives | http://compilers.iecc.com |
| Xref | x330-a1.tempe.blueboxinc.net comp.compilers:380 |
Show key headers only | View raw
On Thu, Dec 1, 2011 at 2:46 AM, Paul B Mann <paul@paulbmann.com> wrote: > The LRSTAR parser generator reports two errors in this grammar: > > S -> A|B > A -> A > B -> t > > > LRSTAR Basic 3.0.137 Copyright 2011 Compilerware. > > silly.grm(6) : Useless production. > > silly.grm(6) : Nonterminal symbol in cycle, cannot derive anything. > > 0 min 0.000 sec, 0.728 MB, 0 warnings, 2 errors. The Meta-S parser generator reports two errors: eV005: Cyclic Recursion (on A->A since Meta-S is top-down, A->A is illegal cyclic recursion) eV008: Class expected as parameter (on S->A|B, since A did not compile, and therefore A|B does not resolve A to any valid rule) A variation of the above grammar that generates the same errors is: > S -> A|B > A -> [B] A > B -> t Because A obviously expands to: A -> B A A -> A Which ends up in the same left-recursive hole. A -> C A C -> [B] of course generates the same error because effectively it's just another way to say A -> [B] A and can lead to potential recursion. I suppose the reason I'm bringing this up is that I mentioned earlier that in adaptive grammars it is possible to write grammars that have rules that are not known until parse-time to derive terminals on any given rule. Because the parse is top down, however, A -> A is a case of a rule that generates an error because it is malformed per the Adaptive-K algorithm. That said: S -> A|B A -> C A C -> x.y B -> "t" Is a case where x.y *may* contain the empty string at parse time, or may not (depending on input), and so is not thrown away with an error. This is where writing adaptive grammars becomes a creative exercise. Quinn
Back to comp.compilers | Previous | Next — Previous in thread | Next in thread | Find similar
How detect cycle in grammar ? Borneq <a.moderacja@gmail.com> - 2011-11-20 08:48 -0800
Re: How detect cycle in grammar ? Hans Aberg <haberg-news@telia.com> - 2011-11-21 18:14 +0100
Re: How detect cycle in grammar ? Gene <gene.ressler@gmail.com> - 2011-11-21 10:20 -0800
Re: How detect cycle in grammar ? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2011-11-22 15:20 +0000
Re: How detect cycle in grammar ? Quinn Tyler Jackson <quinn_jackson2004@yahoo.ca> - 2011-11-25 22:28 -0800
Re: How detect cycle in grammar ? Gene <gene.ressler@gmail.com> - 2011-11-27 10:18 -0800
Re: How detect cycle in grammar ? Borneq <a.moderacja@gmail.com> - 2011-11-23 12:56 -0800
Re: How detect cycle in grammar ? Borneq <a.moderacja@gmail.com> - 2011-11-24 09:24 -0800
Re: How detect cycle in grammar ? Gene <gene.ressler@gmail.com> - 2011-11-27 10:27 -0800
Re: How detect cycle in grammar ? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2011-11-28 16:46 +0000
Re: How detect cycle in grammar ? glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2011-11-29 07:31 +0000
Re: How detect cycle in grammar ? Paul B Mann <paul@paulbmann.com> - 2011-12-01 02:46 -0800
Re: How detect cycle in grammar ? Quinn Tyler Jackson <quinn_jackson2004@yahoo.ca> - 2011-12-02 09:20 -0800
Re: How detect cycle in grammar ? Gene <gene.ressler@gmail.com> - 2011-12-07 06:29 -0800
csiph-web