Monday 15 March 2010

Oikea parseri

Yoolin SHaV4 - määritelmä tarvitsee jälleen päivityksen :)

Sen sijaan että tulkki palauttaa getwordillä itselleen kaiken toisen ja kolmannen lainausmerkin väliltä, ja etsii siitä muuttujat ja korvaa ne, SHaV4 esittelee oman parserimoduulin. Se tarkastaa jok'ikisen sanan käsiteltävältä riviltä, olettaen että jokainen järjestysluvultaan pariton lainaus sisältää muuttujan tai arvonpalauttavan funktion. Ladattuaan muuttuja-arvot käsiteltävälle riville, se palauttaa rivin runtimen puolelle, jossa tarkistetaan onko parseroitua riviä hyödyntävä avainsana "tulosta" vai "virhe" vai mikä.

Tämä tuo mukanaan sen, että muuttujasyntaksi on seuraava: tulosta "Nimeni on "+nimi+";, ja tuossa mainittu +nimi+ on aiemmin koodissa määritelty str - muuttujaksi."

Tuossa lainauksien välissä oleva nimi siis tunnistetaan muuttujaksi. Ainoa ongelma on, että jos käyttäjä haluaa tulostaa useamman muuttujan, se pitää tehdä näin: tulosta "Sitten seuraa läjä muuttujia: "+muuttuja+""+muuttuja2+""muuttuja4+" eli muuttujien välissä on oltava tyhjät lainaukset tai parseri hämääntyy";

Koodarin ei tarvitse enää huolehtia muuttujan tyypistä tulostaessa. Tulkki päästänee läpi samannimisiä muuttujia, mutta se ei missään nimessä ole A)suositeltavaa eikä B) todellakaan järkevää. Yritän totettaa tarkastuksen muuttujan olemassaolon varalta.

No comments:

Post a Comment