Re: simple :)
Nismo se razumeli verovatno,
znam da
<YYINITIAL> . {return new Symbol(sym.INVALID, yytext());}
vraca sve ono sto nije upareno i zato ide na kraj (ne mora da ide na kraj
ali jedino sto ima smisla da
dodje iza toga jeste prelazak u novi red jer . ne uparuje samo prelazak u
novi red).
Nije to bilo pitanje,pitanje se odnosilo na iskljucivo simple.lex fajl,
koji nema gorepomenutu liniju vec umesto nje na kraju ima :
*
<YYINITIAL> . {}*
E sad ono sto je mene interesovalo kako se onda iz simple.lex vraca
sym.INVALID
ako leksicki generator nije nigde ni definisao taj token?
Jedino sto mi pada na pamet da je to neka default vrednost.
Nadam se da sam pojasnio pitanje.
2007/12/10 Stanislav Vuckovic <stanislav_vuckovic@vektor.net>:
> Moze Leksicki analizator da vrati sym.INVALID. To se specificira *
> poslednjim* redom u specifikaciji regularnih izraza u lex fajlu na sl
> nacin!
>
> <YYINITIAL> . {return new Symbol(sym.INVALID, yytext());}
>
> Obrati paznju na tacku posle <YYINITIAL>, ona znaci "bilo kakav unos, osim
> novog reda"! Posto leksicki analizator uporedjuje novo procitani token sa
> regularnim izrazima po redosledu po kojem su regularni izrazi navedeni u
> .lex specifikaciji, ova gornja specifikacija mora da bude poslednja (a mozda
> i ne mora, posto je lekser alav, tj na engleskom greedy, neka me ispravi
> asistent)
>
> Pozdrav!
>
>
>
>
>
> ----- Original Message -----
> *From:* Ivan Lukić <ivan.lukic83@gmail.com>
> *To:* ir4pp1@rti.etf.bg.ac.yu
> *Sent:* Monday, December 10, 2007 5:35 PM
> *Subject:* [ir4pp1] simple :)
>
> E pa da i ja nesto priupitam,
> jel moze neko da mi objasni cemu ne sluzi while petlja unutar scan() koda
> (govorimo o simple.cup fajlu)?
> Da budem precizniji mislim na pelju while ( simbol.sym == sym.INVALID ).
> Receno je da nam to sluzi u slucaju leksicke greske,ali kad sam gledao
> leksicki generator nigde nisam mogao da nadjem gde se vraca sym.INVALID.
> (valjda kod . bi trebalo, na samom kraju simple.lex fajla,ali toga nema).
> Dakle ako leksicki generator ne moze da vrati sym.INVALID cemu sluzi ta
> petlja,
> odnosno interesuje me da li je sym.INVALID neka podrazumevana vrednost u
> ovom slucaju
> i da li moze da bude prosledjenja u parser iako nije definisana?
>
> Samo toliko :)
>
> Pozdrav svima
>
> ------------------------------
>
> -----------------------------------------------------------------
> unsubscribe:
> minimalist@rti.etf.bg.ac.yu?subject=unsubscribe%20ir4pp1
> -----------------------------------------------------------------
>
>
> -----------------------------------------------------------------
> unsubscribe:
> minimalist@rti.etf.bg.ac.yu?subject=unsubscribe%20ir4pp1
> -----------------------------------------------------------------
>
>
znam da
<YYINITIAL> . {return new Symbol(sym.INVALID, yytext());}
vraca sve ono sto nije upareno i zato ide na kraj (ne mora da ide na kraj
ali jedino sto ima smisla da
dodje iza toga jeste prelazak u novi red jer . ne uparuje samo prelazak u
novi red).
Nije to bilo pitanje,pitanje se odnosilo na iskljucivo simple.lex fajl,
koji nema gorepomenutu liniju vec umesto nje na kraju ima :
*
<YYINITIAL> . {}*
E sad ono sto je mene interesovalo kako se onda iz simple.lex vraca
sym.INVALID
ako leksicki generator nije nigde ni definisao taj token?
Jedino sto mi pada na pamet da je to neka default vrednost.
Nadam se da sam pojasnio pitanje.
2007/12/10 Stanislav Vuckovic <stanislav_vuckovic@vektor.net>:
> Moze Leksicki analizator da vrati sym.INVALID. To se specificira *
> poslednjim* redom u specifikaciji regularnih izraza u lex fajlu na sl
> nacin!
>
> <YYINITIAL> . {return new Symbol(sym.INVALID, yytext());}
>
> Obrati paznju na tacku posle <YYINITIAL>, ona znaci "bilo kakav unos, osim
> novog reda"! Posto leksicki analizator uporedjuje novo procitani token sa
> regularnim izrazima po redosledu po kojem su regularni izrazi navedeni u
> .lex specifikaciji, ova gornja specifikacija mora da bude poslednja (a mozda
> i ne mora, posto je lekser alav, tj na engleskom greedy, neka me ispravi
> asistent)
>
> Pozdrav!
>
>
>
>
>
> ----- Original Message -----
> *From:* Ivan Lukić <ivan.lukic83@gmail.com>
> *To:* ir4pp1@rti.etf.bg.ac.yu
> *Sent:* Monday, December 10, 2007 5:35 PM
> *Subject:* [ir4pp1] simple :)
>
> E pa da i ja nesto priupitam,
> jel moze neko da mi objasni cemu ne sluzi while petlja unutar scan() koda
> (govorimo o simple.cup fajlu)?
> Da budem precizniji mislim na pelju while ( simbol.sym == sym.INVALID ).
> Receno je da nam to sluzi u slucaju leksicke greske,ali kad sam gledao
> leksicki generator nigde nisam mogao da nadjem gde se vraca sym.INVALID.
> (valjda kod . bi trebalo, na samom kraju simple.lex fajla,ali toga nema).
> Dakle ako leksicki generator ne moze da vrati sym.INVALID cemu sluzi ta
> petlja,
> odnosno interesuje me da li je sym.INVALID neka podrazumevana vrednost u
> ovom slucaju
> i da li moze da bude prosledjenja u parser iako nije definisana?
>
> Samo toliko :)
>
> Pozdrav svima
>
> ------------------------------
>
> -----------------------------------------------------------------
> unsubscribe:
> minimalist@rti.etf.bg.ac.yu?subject=unsubscribe%20ir4pp1
> -----------------------------------------------------------------
>
>
> -----------------------------------------------------------------
> unsubscribe:
> minimalist@rti.etf.bg.ac.yu?subject=unsubscribe%20ir4pp1
> -----------------------------------------------------------------
>
>
- Follow-Ups:
- Re: simple :)
- From: "Miroslav Slavkovic" <apophys@sezampro.yu>
- Re: simple :)
- References:
- simple :)
- From: "Ivan Lukić" <ivan.lukic83@gmail.com>
- Re: simple :)
- From: "Stanislav Vuckovic" <stanislav_vuckovic@vektor.net>
- simple :)
Previous by date: Re: simple :)
Next by date: za asistenta
Previous by thread: Re: simple :) Next by thread: Re: simple :)
Previous by thread: Re: simple :) Next by thread: Re: simple :)