28.04.2014 Views

Metody Realizacji Jezyków Programowania - Analiza składniowa

Metody Realizacji Jezyków Programowania - Analiza składniowa

Metody Realizacji Jezyków Programowania - Analiza składniowa

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Analiza</strong> syntaktyczna<br />

<strong>Analiza</strong>tor syntaktyczny (parser) jest funkcja˛<br />

sprawdzajac ˛ a, ˛ czy<br />

dane słowo należy do języka i, jeśli tak, budujac ˛ a˛<br />

drzewo struktury.<br />

Algorytm Youngera: O(n 3 ) i nie daje drzewa struktury.<br />

Istnieja˛<br />

efektywne algorytmy dla pewnych klas gramatyk.<br />

Dwa zasadnicze podejścia:<br />

Top-down: próbujemy sparsować określona˛<br />

konstrukcję<br />

(nieterminal); drzewo struktury budowane od korzenia do liści.<br />

Bottom-up: W danym napisie znajdujemy możliwe konstrukcje;<br />

drzewo budowane od liści do korzenia ze znalezionych kawałków.<br />

Marcin Benke (MIM UW) <strong>Metody</strong> <strong>Realizacji</strong> Języków <strong>Programowania</strong> 11 października 2010 18 / 31

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!