Parser je dio softvera koji procjenjuje sintaksu skripte kada se izvršava na web poslužitelju. Za jezike skriptiranja koji se koriste na webu, parser radi kao što bi prevodilac mogao raditi u drugim vrstama okruženja za razvoj aplikacija.
Na isti način na koji prevodilac može kreirati objektni kod koji će se koristiti na računalu iz izvornog koda, parser može pretvoriti skriptni kod u čitljiv objektni kod ili prikazati sintaksičke pogreške pronađene kada se kod izvršava u pregledniku.
Parseri se obično koriste u razvoju skripte jer mogu procijeniti kod kada se skripta izvrši i ne zahtijevaju da se kod prije prevede. Kompilacija izvornog koda i njegovo izvršenje događa se u jednom koraku za razliku od C++ ili drugog binarnog prevoditelja u kojem se izvorni kod prevodi u objektni kod, a zatim se ovaj kod mora instalirati ili pokrenuti zasebno.
Najveća razlika između parsera i kompilatora je okruženje i jezik s kojim rade. Na primjer, poslužitelj analizira mnoge skripte, a izvorni kod aplikacije ili operativnog sustava kompilira se za instalaciju. Ta se dva pojma mogu koristiti naizmjenično za predstavljanje iste aktivnosti, a programski kod se može raščlaniti u objektni kod i kod skripte sastavljen na webu.
Mnogi parseri rade uzastopno tako što izvršavaju poslane izraze s lijeva na desno i odozgo prema dolje. Kada se pronađe greška, parser će se zaustaviti. Ako u aplikaciji postoji kodiranje za stanje pogreške, poduzimaju se radnje povezane s tim kodiranjem. Ako je raščlanjeni kod skripta na webu, pogreška se može prikazati u prozoru preglednika dok se kôd izvršava. Parser ne može rukovati kodom u retku 12 ako kod u retku 11 ili ranije uzrokuje pogrešku.
Parser procjenjuje dostavljenu sintaksu (ili kod) i određuje izvršne dijelove, prikazujući pronađene pogreške kako ide. To pomaže u otklanjanju pogrešaka koda i može pomoći u zaštiti intelektualnog vlasništva koje može biti izvorni kod projekta. Primjer ovog procesa ne mora se razmišljati u smislu skriptiranja ili programiranja. Zamislite rečenicu na engleskom jeziku. Sljedeća rečenica će dobro doći:
Veliki smeđi medvjed brzo trči.
Rastaviti ovu rečenicu značilo bi secirati svojstva riječi u rečenici kako bi čitatelj shvatio da je medvjed imenica, smeđi i veliki su pridjevi koji opisuju medvjeda, a da trči glagol ili radnju koju medvjed izvodi. Prilog brzo modificira glagol runs u rečenici.
To je jednostavan primjer onoga što radi parser. Procjenjuje kod koji je predviđen za sintaksu i može stvoriti objektni kod ili iskoristiv izlaz.