Parsing: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Vari fix (formattazione, punteggiatura, ecc.).
Etichette: Modifica da mobile Modifica da web per mobile Modifica da mobile avanzata
Modifico in base a linee guida vedi Wikipedia:Voci correlate
 
(3 versioni intermedie di 2 utenti non mostrate)
Riga 1:
In [[informatica]] il L''''analisi sintattica'parsing'' o ''', definito altresì ''parsing''analisi sintattica''' ooppure '''parsificazione''', è un processo che analizza un flusso continuo di dati in ingresso ([[input]], letti per esempio da un [[file]] o una [[tastiera (informatica)|tastiera]]), in modo da determinare la correttezza della sua struttura grazie ad una data [[grammatica formale]]. UnIl termine '''''parser'''parsing'' èproviene undal [[programmaLingua (informatica)latina|programmalatino]] ''pars'' ("parte"), che esegueindica una parte di un discorso questopiù compitoampio.
 
Il programma che esegue questa analisi è detto '''analizzatore sintattico''' o '''''parser'''''. Di solito i parser non sono scritti a mano, ma realizzati attraverso dei [[generatore di parser|generatori di parser]].
Il termine ''parsing'' proviene dal [[Lingua latina|latino]] ''pars'' ("parte"), che indica una parte di un discorso più ampio.
 
Tipicamente, ilIl termine italiano viene"analisi utilizzatosintattica" perfa riferirsiriferimento al riconoscimento di una grammatica e alla conseguente costruzione di un [[albero sintattico]], che mostra le regole utilizzate durante il riconoscimento dell'input; l'albero sintattico viene poi visitato (anche più volte) durante l'[[Esecuzione (informatica)|esecuzione]] di un [[interprete (informatica)|interprete]] o di un [[compilatore]]. Nella maggior parte dei linguaggi, l'analisi sintattica opera sulla sequenza di ''[[Token (testo)|token]]'' ottenuta dal lavoro dell'[[analizzatore lessicale]] sui dati in ingresso.
Di solito i parser non sono scritti a mano, ma realizzati attraverso dei [[generatore di parser|generatori di parser]].
 
Tipicamente, il termine italiano viene utilizzato per riferirsi al riconoscimento di una grammatica e alla conseguente costruzione di un [[albero sintattico]], che mostra le regole utilizzate durante il riconoscimento dell'input; l'albero sintattico viene poi visitato (anche più volte) durante l'[[Esecuzione (informatica)|esecuzione]] di un [[interprete (informatica)|interprete]] o di un [[compilatore]].
 
Nella maggior parte dei linguaggi, tuttavia, l'analisi sintattica opera su una sequenza di ''[[Token (testo)|token]]'' in cui l'[[analizzatore lessicale]] spezzetta l{{'}}''[[input]]''. Pertanto, il termine inglese spesso viene usato per indicare l'insieme dell'[[analisi lessicale]] e dell'analisi sintattica vera e propria.
 
==Descrizione==
Line 44 ⟶ 40:
== Voci correlate ==
* [[Augmented transition network]]
 
=== [[Parser top-down]] ===
* [[Parser LL]]
** [[Parser a discesa ricorsiva]]
* [[Parser packrat]]
* [[Unger's method]]
 
=== [[Parser bottom-up]] ===
* [[Parser LR]]
** [[Parser SLR]]
** [[ParserGeneratore LALRdi parser]]
* [[Parser di Earley]]
* [[CYK algorithm]]
* [[Tomita's Algorithm]]
 
=== [[Generatore di parser|Generatori di parser]] ===
* [[ANTLR]]
* [[GNU Bison]]
Line 65 ⟶ 48:
* [[JavaCC]]
* [[Yacc]]
* Spirit (Boost)
* [[VisualLangLab]]
 
== Altri progetti ==