Professional Documents
Culture Documents
1)SiconsiderilaseguentegrammaticacontextfreeG={N,T,S,P}con:
N={S,B}
T={op,bit}
S=S
P={
SopB
Bbit
}
doveopuntokenconlessemiin{+,}ebituntokenconlessemiin{0,1}.
ScrivereunprogrammaYACCpergenerareuntraduttoreI/Ochestampainoutputilbitinputoil
suonegatoasecondacheilvaloredi op sia+o,rispettivamente. Usareobbligatoriamente
LEXperlacostruzionedell'analizzatorelessicale.
Alcuniesempi:
perlinput+0
perlinput1
deveesserestampato0
deveesserestampato0
2)Scriverelalgoritmodiparsingprogramperlatecnicadiparsingpredittivononricorsivo
3)Fornirelaproduzioneelazionesemanticaperiltypecheckingdeicostruttiifthenesequenza
distatements
LinguaggidiProgrammazioneeCompilatori
1)DatoillinguaggioregolareL={xyn/n0}sull'alfabetoA={x,y},costruireildiagramma
statitransizionecorrispondenteapplicandol'algoritmodiThompson
2)Dareleseguentidefinizioni:
GrammaticaLALR
Typecheckingstaticoedinamico
3)Scrivereilcodicea3indirizziperlastringasorgente:
(ab)+c
Siconsiderinobecreal,eainteger
LinguaggidiProgrammazioneeCompilatori
(2)Rispondereaiseguentiquesiti:
2.1)elencareleproprietdegliautomicostruitidallalgoritmodiThompson
2.2)dareladefinizionedigrammaticaSLR
2.3)dareladefinizionedischemaditraslazione
(3)Scriverelalgoritmoperlacostruzionedelgrafodelledipendenze
LinguaggidiProgrammazioneeCompilatori
1)ScrivereunprogrammaLEXcontenentelacoppiapatternactiondove:
pattern unespressione regolare che fa match con numeri appartenenti allinsieme
{0,1,+1,2,+2,3,+3,}eracchiusitraparentesitonde
actionunazionecherestituisceinoutputlaprimacifradelnumero
Esempi:
perillessemainput(+243)
deveesserestampato2
perillessemainput(41)
deveesserestampato4
perillessemainput(+78406) deveesserestampato7
perillessemainput(0)
deveesserestampato0
2)CostruireilgotografoSLRperlaseguentegrammaticacontextfree:
SABb
AAc
Aa
Bc
3)ScriverelalgoritmoperilcalcolodellafunzioneFollow