Abstracte syntaxis: verschil tussen versies
Verwijderde inhoud Toegevoegde inhoud
Geen bewerkingssamenvatting |
|||
Regel 1:
'''Abstracte syntaxis''' is een representatie van data (vaak een bericht dat over een [[communicatie]]kanaal wordt verstuurd of een [[computerprogramma]] dat [[Compilatie (informatica)|gecompileerd]] wordt) die onafhankelijk is van machine-afhankelijke [[Datastructuur|datastructuren]] en coderingen en ook van de werkelijke representatie van de data (in het geval van compileren de ''concrete syntaxis'' genoemd en bij communicatie de ''transfersyntaxis'').
In een [[Compilatie (informatica)|compiler]] wordt een computerprogramma gerepresenteerd met behulp van abstracte termen zoals ''identifier'' en ''variable''. Deze representatie is onafhankelijk van de syntaxis van de [[broncode]] (de concrete syntaxis) van het programma dat gecompileerd wordt, ook al zullen deze vaak vergelijkbaar zijn. Een [[syntaxisboom]] is vergelijkbaar met een [[
==Voorbeeld==
Regel 15:
:<code>data S = CaseA S | CaseB S S | CaseC</code>
De [[String (informatica)|string]] "abacc" (de concrete syntax) kan gerepresenteerd worden met de volgende abstracte
:<code>CaseA (CaseB (CaseA CaseC) CaseC)</code>
|