2 Sep 2005 14:18:36 -0400

Related articles |
---|

computing LOOKAHEAD sets vkatsikaros@yahoo.gr (Vangelis Katsikaros) (2005-08-31) |

Re: computing LOOKAHEAD sets jjan@cs.rug.nl (J.H.Jongejan) (2005-09-02) |

From: | "J.H.Jongejan" <jjan@cs.rug.nl> |

Newsgroups: | comp.compilers |

Date: | 2 Sep 2005 14:18:36 -0400 |

Organization: | RuG |

References: | 05-08-114 |

Keywords: | parse |

Posted-Date: | 02 Sep 2005 14:18:36 EDT |

Vangelis Katsikaros wrote:

*> I am a computer science student and I would like to ask something. I*

*> cant fully understand how I compute the LOOKAHEAD set for a grammar.*

*>*

*> For my exams we use LOOKAHEAD to identify a LL(1) grammar. The procces*

*> includes computing firstly FIRST and FOLLOW sets. Then using them we can*

*> compute the LOOKAHEAD. But I cant fully understand this second process.*

*>*

*> I know how to compute FIRST and FOLLOW set and I would like a*

*> description or algorithm for computing the LOOKAHEAD from these.*

Vangelis,

Always start with a reduced grammar, i.e. the grammar with all

useless symbols/rules removed (full definition of this below).

Then LA(A -> x) = if nullable(x) then first(x) union follow(A)

else first(x)

Here, of course A is a nonterminal, x a string of (non-)terminals.

To make a grammar reduced do the following two steps:

1. remove all nonterminating symbols

2. remove all unreachable symbols (and their rules)

With regards,

Jan Jongejan

Dept. Comp.Sci.,

Univ. of Groningen,

Netherlands.

Post a followup to this message

Return to the
comp.compilers page.

Search the
comp.compilers archives again.